0
点赞
收藏
分享

微信扫一扫

D进制的A+B

题目描述

输入两个非负十进制整数A和B(≤20-1)以及D(进制数),输出A+B的D(1<D≤10)进制数。

输入格式

在一行中依次给出三个整数A、B和D(进制数)。

输出格式

A+B的D进制数。

输入样例

123 456 8

输出样例

1103

思路

先计算A+B(此时为十进制),然后把结果转换为D进制,而十进制转换为D进制的过程可以直接进行“除基取余法”。

 程序代码:

#include<cstdio>
int main(){
int a,b,d;
scanf("%d%d%d",&a,&b,&d);
int sum=a+b;
int ans[31],num=0;//ans存放D进制的每一位
do {//进制转换
ans[num++] = sum % d;
sum /=d;
} while(sum!=0);
for(int i=num-1;i>=0;i--){//从高位到地位输出
printf("%d",ans[i]);
}
return 0;
}

 

运行结果:

D进制的A+B_进制


举报

相关推荐

0 条评论