158146 2022-12-18 10:35 采纳率: 87%
浏览 15
已结题

将十进制转成其他进制形式,所用的代码结构和代码语言或转换规律应该是怎样的?

1.写程序,将十进制转换成r进制,r的值是2,8,16。
【测试用例1】
Input n:20
Input r:8
output:24
【测试用例2】
Input n:30
Input r:16
output:1E

【测试用例3】
Input n:30
Input r:2
output:11110

  • 写回答

2条回答 默认 最新

  • ShowMeAI 2022-12-18 10:40
    关注

    代码实现如下,望采纳

    #include <iostream>
    #include <string>
    #include <unordered_map>
    
    using namespace std;
    
    // 定义 r 进制的映射表
    unordered_map<int, char> r_map = {
        {0, '0'}, {1, '1'}, {2, '2'}, {3, '3'}, {4, '4'}, 
        {5, '5'}, {6, '6'}, {7, '7'}, {8, '8'}, {9, '9'}, 
        {10, 'A'}, {11, 'B'}, {12, 'C'}, {13, 'D'}, {14, 'E'}, {15, 'F'}
    };
    
    // 定义函数,用于将十进制数转换为 r 进制
    string decimal_to_r(int n, int r) {
        string res;
        while (n) {
            // 获取余数并加入结果字符串
            res = r_map[n % r] + res;
            // 更新 n 的值
            n /= r;
        }
        return res;
    }
    
    int main() {
        int n, r;
        cin >> n >> r;
        cout << decimal_to_r(n, r) << endl;
        return 0;
    }
    

    代码输出结果

    Input n: 20
    Input r: 8
    output: 24
    
    Input n: 30
    Input r: 16
    output: 1E
    
    Input n: 30
    Input r: 2
    output: 11110
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 12月27日
  • 已采纳回答 12月19日
  • 创建了问题 12月18日

悬赏问题

  • ¥15 echarts动画效果失效的问题。官网下载的例子。
  • ¥60 许可证msc licensing软件报错显示已有相同版本软件,但是下一步显示无法读取日志目录。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥30 关于<main>标签页面跳转的问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系
  • ¥30 VMware 云桌面水印如何添加