输入两个非负 10 进制整数 A 和 B (≤2^30 −1),输出 A+B 的 D (1<D≤10)进制数。
输入格式:
输入在一行中依次给出 3 个整数 A、B 和 D。
输出格式:
输出 A+B 的 D 进制数。
输入样例:
123 456 8
输出样例:
1103:
题目分析:
如果比较熟悉进制转换的话,这个题是比较简单的,但是要注意特殊情况,即A+B=0时,无论D是多少,输出都是0。
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
int main()
{
int a,b,d,i=0,sum,c[40];
cin>>a>>b>>d;
sum=a+b;
if(sum==0)
{
printf("0\n");
return 0;
}
while(sum!=0)
{
c[i++]=sum%d;
sum/=d;
}
--i;
for(;i>=0;i--)
printf("%d",c[i]);
return 0;
}