课后作业006 爱因斯坦的难题 求大佬解惑
i = 7while (i % 2 != 1) and (i % 3 != 2) and (1 % 5 != 4) and (i % 6 != 5):
i*=2
print(i)
不知道为什么 跑起来直接等于 7
(纯小白,莫嫌弃T_T) while (i % 2 != 1) ...
7%2 = 1 ,不满足循环条件
直接跳出循环了
所以直接print(7) 逃兵 发表于 2021-4-10 16:21
while (i % 2 != 1) ...
7%2 = 1 ,不满足循环条件
中间用 and 链接不是应该带都满足才可以跳出循环 5402285zz 发表于 2021-4-10 16:42
中间用 and 链接不是应该带都满足才可以跳出循环
都满足才会进入循环,有一条不满足就不进入循环了 逃兵 发表于 2021-4-10 17:04
都满足才会进入循环,有一条不满足就不进入循环了
明白了,谢谢 龙舞九天 发表于 2021-4-11 06:31
真的明自?!
我的理解是要符合while循环,必须满足while后跟的条件,当i = 7 时,不满足就直接跳出循环了,直接给出答案.但是我想不出改进方法,希望指点 逃兵 发表于 2021-4-10 17:04
都满足才会进入循环,有一条不满足就不进入循环了
大佬,我这种方法没有可以改进的策略,小甲鱼的那种我平时不可能想的到. 5402285zz 发表于 2021-4-12 10:56
大佬,我这种方法没有可以改进的策略,小甲鱼的那种我平时不可能想的到.
i = 7
n = 1
while n==1:
if (i%2==1) and (i%3==2) and (i%5==4) and (i%6==5) and (i%7==0):
print(i)
n = 0
i+=1
页:
[1]