码迷,mamicode.com
首页 > 编程语言 > 详细

十进制数转N进制c++实现

时间:2017-10-15 23:21:08      阅读:409      评论:0      收藏:0      [点我收藏+]

标签:lib   +=   技术   算法   截图   shift   else   images   http   

编写一个算法,将一个非负的十进制整数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;

}

实验结果截图如下:

技术分享

 

十进制数转N进制c++实现

标签:lib   +=   技术   算法   截图   shift   else   images   http   

原文地址:http://www.cnblogs.com/linruier/p/7674777.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!