|
发表于 2020-10-21 14:47:17
|
显示全部楼层
二楼的很不错,不过有两个小问题。
第一:它的程序只能输入思维全不同的才能向下计算,否则就只能一直输入,与题目要求不太一样
第二:对于误操作输入数字以外的字符的情况,没有考虑
- num=input("请输入一个四位数:")
- while True:
- if num.isdigit():
- if int(num) in range(1000,10000):
- if len(set(num))==1:
- num=input("不能四位相同,请重新输入一个四位数:")
- else:
- break
- else:
- num=input("不是四位数:请重新输入一个四位数:")
- else:
- num=input("请输入一个四位数:")
- step=0
- while True:
- maxnum=''.join(sorted(num,reverse=True))
- minnum=''.join(sorted(num))
- num=int(maxnum)-int(minnum)
- step+=1
- if num==6174:
- break
- num=str(num)
- if len(num)<4:
- num+='0'*(4-len(num))
- print("步长=",step)
复制代码 |
|