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

作者: freesan44 | 来源:发表于2021-09-01 08:33 被阅读0次

    题目

    输入两个非负 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)
    

    相关文章

      网友评论

        本文标题:PTA 1022 D进制的A+B (20 分)

        本文链接:https://www.haomeiwen.com/subject/fqqciltx.html