473951841 发表于 2017-4-22 15:52:52

第6讲的编程题第二问稍微改动了甲鱼老师的答案提示语法错误为啥?

x = 7


flag = 0

while True:
    if (x%2 == 1) and (x%3 == 2) and (x%5 == 4) and (x%6==5):
      flag = 1 break
    else:
      x = x+7# 根据题意,x一定是7的整数倍,所以每次乘以7
   
if flag == 1:
    print('阶梯数是:', x)
else:
    print('在程序限定的范围内找不到答案!')

mdyuan 发表于 2017-4-22 19:56:47

由于Python不像C语言还有MATLAB等语言,语句后面以分号结尾,故它们一行可以写多条语句。
而Python以不同的行来断句,故错误出在:flag = 1 break
改成两行即可!

flag = 1
break

答案为119

473951841 发表于 2017-4-22 20:13:47

mdyuan 发表于 2017-4-22 19:56
由于Python不像C语言还有MATLAB等语言,语句后面以分号结尾,故它们一行可以写多条语句。
而Python以不同 ...

谢谢

mdyuan 发表于 2017-4-25 00:24:35

473951841 发表于 2017-4-22 20:13
谢谢

另外,刚学习了。
在Python 3.x 以上一行可以书写多行语句,用分号隔开即可。
故   flag = 1; break; 也是正确的。
亲测有效!
页: [1]
查看完整版本: 第6讲的编程题第二问稍微改动了甲鱼老师的答案提示语法错误为啥?