PAT B1022 D進位制的A+B(進位制轉換板題,簡單模擬)

sunlanchang發表於2019-02-01

描述

輸入兩個非負 10 進位制整數 A 和 B(2301)(≤2^{ ​30}−1),輸出 A+B 的 D (1<D≤10)進位制數。

輸入格式:

輸入在一行中依次給出 3 個整數 A、B 和 D。

輸出格式:

輸出 A+B 的 D 進位制數。

輸入樣例:

123 456 8

輸出樣例:

1103

Solution

進位制轉換板題。

#include <iostream>
#include <cstdio>
using namespace std;
int arr[11111];
int main()
{
    // freopen("in.txt", "r", stdin);
    int a, b, n;
    while (~scanf("%d%d%d", &a, &b, &n))
    {
        int res = a + b, index = 0;
        do
        {
            arr[index++] = res % n;
            res = res / n;
        } while (res != 0);
        for (int i = index - 1; i >= 0; i--)
            printf("%d", arr[i]);
        printf("\n");
    }
    return 0;
}

相關文章