本帖最后由 jackz007 于 2024-8-28 16:16 编辑
因为在 while 循环结束后,你需要知道是否已经找到了符合条件的阶梯数值,以便在代码即将结束运行的时候可以据此判断查找情况,并打印查找结果。
进入 while 循环前,先为变量 FIND 赋值为 False,意思是没有找到,进入循环后,一旦找到一个阶梯数能够满足条件,就立即修改 FIND 的值为 True,意思是已经找到,并立即用 break 语句结束循环,循环结束后,如果 FIND 的值依然是 False,那就说明没有找到,如果FIND 的值是 True,那就说明已经找到,而且,这个被找到阶梯数是 steps。
答案给出的代码不是很好,把简单问题复杂化了,这里提供 2 个简化代码,谨供楼主参考
【代码1】:无 FIND 版for steps in range(7 , 700 , 7):
if (steps % 2 == 1) and (steps % 3 == 2) and (steps % 5 == 4) and (steps % 6 == 5):
print('阶梯数是:', steps)
break
else:
print('在程序限定的范围内找不到答案!')
【代码2】:有 FIND 版FIND = False # 假定查找结果为 “没有找到”
for steps in range(7 , 700 , 7):
if (steps % 2 == 1) and (steps % 3 == 2) and (steps % 5 == 4) and (steps % 6 == 5):
FIND = True # 修改查找结果为 “已经找到”
break
if FIND : # 如果已经找到
print('阶梯数是:', steps)
else : # 否则
print('在程序限定的范围内找不到答案!')
|