Pat乙级1019题——数字黑洞(Python)有一个错误

  • 确保输入数字为四位数。
  • 输出也要为四位数。
def digitalBlack():

    next = raw_input()

    if len(next) < 4:
       next = next.zfill(4)
    if len(next) > 4:
        next = next.strip('0')
    def returnNum(number):
        list = []
        for i in range(len(number)):
            list.append(int(number[i]))
        list.sort(reverse = True)
        maxNum = int(('').join(map(str,list)))
        list.sort(reverse = False)
        minNum = int(('').join(map(str,list)))
        return maxNum, minNum

    while next != 6174 and next != 0:
        result = returnNum(str(next))
        next = result[0] - result[1]
        print "%04d - %04d = %04d"%(result[0], result[1], next)

if __name__ == '__main__':
    digitalBlack()

猜你喜欢

转载自blog.csdn.net/coder_wu/article/details/82262409