PTA 1022 D进制的A+B (20 分)
2021-09-01 本文已影响0人
freesan44
题目
输入两个非负 10 进制整数 A 和 B (≤2
30
−1),输出 A+B 的 D (1<D≤10)进制数。
输入格式:
输入在一行中依次给出 3 个整数 A、B 和 D。
输出格式:
输出 A+B 的 D 进制数。
输入样例:
123 456 8
输出样例:
1103
解题思路
A, B, D = map(int, input().split())
# A, B, D = map(int, "123 456 8".split())
num = A + B
isFushu = False
if num < 0:#处理负数的问题
isFushu = True
num = abs(num)
res = ""
while num != 0:
r = num % D #求余得到的数为尾数
num = num//D #取除数进位
res = str(r)+res
if isFushu == True:res = "-"+res
if len(res) == 0:#添加边界条件
print("0")
else:
print(res)