進制轉換

添加鏈接描述

#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;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章