其他进制转换为十进制
Code 01
int conver(int n, int radix) { //radix为n的进制数
string s = to_string(n);
int sum = 0;
for(int i=0; i<s.length(); i++) {
int num = isdigit(s[i])?s[i]-'0':s[i]-'a'+10;
sum += num*pow(radix,s.length()-1-i);
}
return sum;
}
Code 02
int conver(int n, int radix){ //radix为n的进制数
int y=0,product=1;
while(n!=0){
y=y+(n%10)*product;
n=n/10;
product=product*radix;
}
return y;
}
十进制转换为其他进制
Code 01
int conver(int n, int radix) { //radix为n要转换的进制
char res[111],num=0;
do {
res[num++] = n%radix+'0';
n/=radix;
} while(n!=0);
// 反转方法一:
// string ress = res;
// reverse(ress.begin(),ress.end());
// 反转方法二:
strrev(res);
return stoi(res);
}