夜色杀猪 发表于 2018-3-6 21:46:07

泰因斯坦台阶问题

x = 7

flag = 0

while (x<1000)and(flag!=1):
    if (x%2 == 1) and (x%3 == 2) and (x%5 == 4) and (x%6 == 5):
      flag = 1
    else:
      x = x+7
   

if flag == 1:
    print('阶梯数是:', x)
else:
    print('在程序限定的范围内找不到答案!')
为什么我写的这个去掉and(flag!=1)就是不出来答案那、?

°蓝鲤歌蓝 发表于 2018-3-6 21:55:31

因为陷入了无限循环, 虽然 flag已经为1 了,可是 x 却一直没有增加过,所以无限循环了。

夜色杀猪 发表于 2018-3-6 22:22:51

°蓝鲤歌蓝 发表于 2018-3-6 21:55
因为陷入了无限循环, 虽然 flag已经为1 了,可是 x 却一直没有增加过,所以无限循环了。

好的明白了。感谢。。你不说我看小甲鱼老师的答案也搞不明白。。

°蓝鲤歌蓝 发表于 2018-3-6 22:43:53

夜色杀猪 发表于 2018-3-6 22:22
好的明白了。感谢。。你不说我看小甲鱼老师的答案也搞不明白。。

不客气。

让改变发生 发表于 2018-3-8 15:06:50

一样快啊,加油亲
页: [1]
查看完整版本: 泰因斯坦台阶问题