#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
using namespace std;
void zhuan(int n,int r)
{
if(n==0) return ;
int m=n%r;//m为余数
if(m<0) m-=r,n+=r;//如果余数小于0,转化为正数
//将余数转化为ascll码方便输出,省略了一个数组
if(m>=10) m='A'+m-10;
else m+='0';
zhuan(n/r,r);
printf("%c",m);//注意,因为结果为余数倒序,输出要写在递归后面,不然会顺序输出
return ;
}
int main()
{
//freopen("in.txt","r",stdin);
int n,r;
string ans="";
cin>>n>>r;
cout<<n<<"=";
zhuan(n,r);
printf("(base%d)",r);
return 0;
}
P1017 [NOIP2000 提高组] 进制转换
最新推荐文章于 2024-08-31 22:41:09 发布