PAT_B_1022 D进制的A+B (20 分)【测试点2,4出错】

输入两个非负 10 进制整数 A 和 B (≤2​30​​−1),输出 A+B 的 D (1<D≤10)进制数。

输入格式:

输入在一行中依次给出 3 个整数 A、B 和 D。

输出格式:

输出 A+B 的 D 进制数。

输入样例:

123 456 8

输出样例:

1103
#include <iostream>
using namespace std;

int main()
{
    int A,B;
    int sys;
    cin>>A>>B>>sys;
    int sum=A+B;        //0~2的31次方-2
    int result[35];    //超过2的31次方,故需要用数组存储
    int power=0;
    do
    {
        result[power++]=sum%sys;
        sum/=sys;
    }while(sum);
    for(int i=power-1;i>=0;i--) cout<<result[i];
    cout<<endl;
    return 0;
}

猜你喜欢

转载自blog.csdn.net/id33749110/article/details/85775233