进制转换

我怕爱的太早我们不能终老 提交于 2020-03-11 13:24:51

添加链接描述

#include <bits/stdc++.h>
#define ll long long

using namespace std;
ll n,m,sum=0;
string x,s="";

int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);
    cin >> n >> x >> m;
    for(int i=0;i<x.size();i++)
    {
        if(x[i]<'A')
        {
            sum+=(x[i]-'0')*pow(n,x.size()-i-1);
        }
        else
        {
            sum+=(x[i]-'A'+10)*pow(n,x.size()-i-1);
        }
    }
    while(sum)
    {
        if(sum%m<10)
        {
            s+=sum%m+'0';
        }
        else
        {
            s+=sum%m+'A'-10;
        }
        sum/=m;
    }
    reverse(s.begin(),s.end());
    cout << s << endl;
    return 0;
}

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!