zoukankan      html  css  js  c++  java
  • 十进制数转N进制c++实现

    编写一个算法,将一个非负的十进制整数N转换为另一个基数为BB进制整数。

    #include <iostream>

    #include<string.h>

    using namespace std;

    //所要的十进制转B进制的函数

    void shift(int B,int before)

    {

        char B_num[B];

        if(B<10){for(int i=0;i<B;i++)B_num[i]=i+48;}

        else

        {

            for(int i=0;i<B;i++)B_num[i]=i+48;

            for(int j=10;j<B;j++)B_num[j]='A'+j-10;

        }//定义好大于10的各个位置表示符号

        string result="";

        int n;int m;

        while(before>=B)

        {

            n=before/B;

            m=before%B;

            result+=B_num[m];

            before=n;

        }

        result+=B_num[n];

        cout<<"转换成功,结果是:"<<endl;

        for(int i=result.length()-1;i>=0;i--)cout<<result[i];

        cout<<endl;

    }

    int main()

    {

        L:int num;int B;

        cout<<"要将十进制数转换为多少进制的数?"<<endl;

        cin>>B;

        cout<<"请输入原始的数据"<<endl;

        cin>>num;

        shift(B,num);

        goto L;

        return 0;

    }

    实验结果截图如下:

  • 相关阅读:
    Linux软件安装中RPM与YUM 区别和联系(转载)
    linux文件系统
    (转载) linux基础知识
    linux学习:硬盘挂载
    IDEA版github教程(转载)
    idea配置gitee(转载)
    事与人的关系
    maven打包失败与问题反思
    计算机开机
    maven到底干了啥
  • 原文地址:https://www.cnblogs.com/linruier/p/9485216.html
Copyright © 2011-2022 走看看