i = 1
for k in (range(1, 21)):
if i % k > 0:
for j in range(1, 21):
if (i*j) % k == 0:
i *= j
break
print (i)
输出:232792560
编写此代码是为了找到可被1到20之间的所有数字整除的最小倍数。
我的问题是为什么"if i % k > 0"
1 % 1 == 0?
(第3行)
"if (i*j) % k == 0"
为什么它会在NSViewController
之后继续(第5行),一旦j和k为2而不是破坏?
答案 0 :(得分:2)
答案 1 :(得分:1)
break语句只会突破内部循环。要打破两者,这是我想你想做的,你需要一个布尔条件。
您可以在break语句之前立即将变量设置为“True”,并在内部循环之外检查条件以查看它是否为真。如果是,则会满足break语句,因此您可以使用另一个break语句退出外循环。