【算法笔记】B1022 D进制的A+B

1022 D进制的A+B (20 分)

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

输入格式:

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

输出格式:

输出 A+B 的 D 进制数。

输入样例:

123 456 8

输出样例:

1103

思路:

输入的数可以用int型来存放,计算和之后直接用除基取余法计算和的D进制数。

输出要注意和为0的情况。

CODE:

 

#include<iostream>
#include<string>
using namespace std;

int main(int argc, char const *argv[])
{
    int a, b, d;
    cin>>a>>b>>d; 
    int sum = a + b;
    int ans[31], num = 0;
    if(sum==0) cout<<0;
    while(sum){
        ans[num++] = sum % d;
        sum /= d;
    }
    for(int i = num - 1; i>=0; i--){
        cout<<ans[i];
    }
    return 0;
}

 

posted @ 2019-03-15 15:40  Resfeber  阅读(207)  评论(0编辑  收藏  举报