PAT乙级刷题/1022 D进制A+B/C++实现

 一、题目描述

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

输入格式:

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

输出格式:

输出 A+B 的 D 进制数。

输入样例:

123 456 8

输出样例:

1103

 

二、题解代码以及提交截图

#include <iostream>
#include <vector>

using namespace std;

int main()
{
    long num1,num2,sum;
    int NumSystem,j = 0;
    cin >> num1 >> num2 >> NumSystem;
    sum = num1 + num2;
    vector<long> list;
    do{
        long num;
        num = sum % NumSystem;
        list.push_back(num);
        j++;
        sum  = (sum - num) / NumSystem;
    }while(sum != 0);
    for(int i = j - 1;i >= 0;i--){
        cout << list[i];
    }
}

 

 

Guess you like

Origin blog.csdn.net/m0_50829573/article/details/121697140