二进制转任意进制

发布时间 2023-10-22 10:04:12作者: 王一行(小号)
#include <bits/stdc++.h>
using namespace std;
char A[16] = {'1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
int s(string n){
    int len = n.length(),ans = 0,i = 0;
    while(i<len){
        ans *= 2;
        ans += n[i]-'0';
        i++;
    }
    return ans;
}
void r(int x,int m){
    int n;
    n = x%m;
    x /= m;
    if(x!=0){
        r(x,m);
    }
    cout<<A[n-1];
}
int main(){
    string n;
    int x;
    cin>>n>>x;
    int a = s(n);
    r(a,x);
    return 0;
}