输入两个非负 10 进制整数 A 和 B (≤230−1≤2^{30}−1≤230−1),输出 A+BA+BA+B 的 DDD (1<D≤101<D≤101<D≤10)进制数。
输入格式:
输入在一行中依次给出 3 个整数 AAA、BBB 和 DDD。
输出格式:
输出 A+BA+BA+B 的 DDD 进制数。
123 456 8
输出样例:
1103
解题思路:
除基取余法:十进制数 xxx 转换为D进制数 yyy 的方法。
int y[32], cnt = 0;
do {
y[cnt++] = x % d;
x /= d;
} while (x != 0);
答案代码:
#include
using namespace std;
int main() {
int a=0, b=0, d=0, sum=0;
cin >> a >> b >> d;
sum = a+b;
// 除基取余法
int ans[32], cnt = 0;
do {
ans[cnt++] = sum % d;
sum /= d;
} while (sum != 0);
for (int i = cnt - 1; i >= 0; i--)
cout << ans[i];
return 0;
}