题解
进制转换
1 条题解
-
0
#include<bits/stdc++.h> using namespace std; int main(){ int n,m; char a[100]; cin>>n; cin>>a; cin>>m; // n进制转十进制 long long x=0; int len=strlen(a); for(int i=0;i<len;i++){ int t; if(a[i]>='0'&&a[i]<='9'){ t=a[i]-'0'; } else{ t=a[i]-'A'+10; } x=x*n+t; } // 十进制转m进制 char b[100]; int cnt=0; if(x==0){ cout<<0; return 0; } while(x>0){ int t=x%m; if(t<10){ b[cnt]=t+'0'; } else{ b[cnt]=t-10+'A'; } cnt++; x=x/m; } // 倒着输出 for(int i=cnt-1;i>=0;i--){ cout<<b[i]; } return 0; }
- 1