十进制与m进制的相互转换

一般用不到,不过偶尔还是遇到,每次写都麻烦,还不如整理个模板

1.十进制转换为m进制

#include
#include
#include
#include
using namespace std;
void change(int n,int m)
{
    string str;
    if(m<=10)
    {
        while(n)
        {
            str+=(n%m+'0');
            n/=m;
        }
        for(int i=str.size()-1; i>=0; i--)
            cout<cout<else
    {
        while(n)
        {
            int x=n%m;
            if(x>=10)
            {
                x-=10;
                str+=(x+'A');
            }
            else
                str+=(x+'0');
            n/=m;
        }
        for(int i=str.size()-1;i>=0;i--)
            cout<cout<int main()
{
    int n,m;
    while(cin>>n>>m)//n为十进制数,m为要转换的进制数
    {
        change(n,m);
    }
}

你可能感兴趣的:(各种算法大归类)