HELP
>>> 爱因斯坦曾出过这样一道有趣的数学题:有一个长阶梯,若每步上2阶,最后剩1阶;若每步上3阶,最后剩2阶;若每步上5阶,最后剩4阶;若每步上6阶,最后剩5阶;只有每步上7阶,最后刚好一阶也不剩。(小甲鱼温馨提示:步子太大真的容易扯着蛋~~~)
---------------------------------------------------------------------------------------------------------------------------------
x = 7
i = 1
flag = 0
while i <= 100:
if (x%2 == 1) and (x%3 == 2) and (x%5 == 4) and (x%6==5):
flag = 1
else:
x = 7 * (i+1) # 根据题意,x一定是7的整数倍,所以每次乘以7
i += 1
if flag == 1:
print('阶梯数是:', x)
else:
print('在程序限定的范围内找不到答案!')
这个课后题 看不懂
1. X是因为每次7步可以刚好走完所以是7?
2. i为什么是1
3.FLAG又是什么 求解 1. X是因为每次7步可以刚好走完所以是7?
是的
2. i为什么是1
从第1个7楼开始,不满足就第2个7楼(14楼)...
3.FLAG又是什么
FLAG是个自己设置的开关
满足(x%2 == 1) and (x%3 == 2) and (x%5 == 4) and (x%6==5)条件后,FLAG变为1,不满足就是0
逃兵 发表于 2021-9-3 17:22
是的
从第1个7楼开始,不满足就第2个7楼(14楼)...
那<= 100: 为什么是100 g476292825 发表于 2021-9-3 18:00
那
100是自己限定的范围,可以改 本帖最后由 jhq999 于 2021-9-3 21:28 编辑
i=楼梯阶数
i=i//7
i=i*7
while i>7:
if (i%2 == 1) and (i%3 == 2) and (i%5 == 4) and (i%6==5):
print(i)
i=i-7
或者
i=楼梯阶数
i=i-(i%7)
while i>7:
if (i%2 == 1) and (i%3 == 2) and (i%5 == 4) and (i%6==5):
print(i)
i=i-7
页:
[1]