文章
28
粉丝
230
获赞
23
访问
241.9k
#include <iostream>
#include <algorithm>
#include <math.h>
using namespace std;
int main(int argc, char const *argv[])
{
long long a,b,Sum;
int stack[100]={0};
string n;
while(cin>>a>>n>>b){
for(int i=0;i<100;i++){
stack[i]=0;
}
Sum=0;//记录十进制数
reverse(n.begin(),n.end());
transform(n.begin(), n.end(), n.begin(), ::toupper);
for (int i = 0; i < n.length(); ++i)
{
if (n[i]>64)//是字母
{
Sum+=(n[i]-'A'+10)*pow(a,i);
}else{//是数字
Sum+=(n[i]-'0')*pow(a,i);
}
}
int j=-1;
while(Sum!=0){
stack[++j]=Sum%b;
Sum/=b;
}
while(j!=-1){
cout<<stack[j--];
}
cout<<endl;
}
return 0;
}
登录后发布评论
暂无评论,来抢沙发