输入两个非负10进制整数A和B(<=2^30^-1),输出A+B的D (1 < D <= 10)进制数。
输入格式:
输入在一行中依次给出3个整数A、B和D。
输出格式:
输出A+B的D进制数。
输入样例:
123 456 8
输出样例:
1103
分析:
短除法。123 + 456 = 579;
使用579,除以8,获得每一次的余数和商,余数存起来,作为低位;商作为新的被除数。
// B22.cpp : Defines the entry point for the console application.
//
#include <iostream>
#include<cstdlib>
#include<cstdio>
using namespace std;
int main()
{
int a;
int b;
int sum ;
int i = 0;
int j;
int d;
int result[100];
cin >> a >> b >> d;
sum = a + b;
//char str[100];//转换结果
//进制转换(重点)/
//_itoa_s(sum, str, d);
//原始的方法也要会啊
while (sum)
{
result[i++] = sum % d;
sum = sum / d;
}
for (j = i - 1 ; j >= 0; j --)
{
cout << result[j];
}
if (i == 0)
{
cout << "0";
}
system("pause");
return 0;
}