【发布时间】:2018-04-10 22:19:01
【问题描述】:
我的练习希望返回所有数字 1 - 1000,但可被 100 整除的数字除外。
n = 1
1000.times do
if n % 1 == 0
if n % 100 == 0
if n % 400 == 0
p n
else
end
else
p n
end
else
end
n = n + 1
end
数字 400 和 800 仍在打印中。需要帮助了解为什么这不起作用。
【问题讨论】:
-
好吧,你的代码清楚地表明应该打印能被 400 整除的数字(包括 400 和 800)......为什么
if n % 400 == 0行甚至从那里开始? -
您可以使用
(1..10).each { |n| p n unless n % 2 == 0 }打印除可被2 整除的数字1 到10。将此用作模板。 -
能否请您澄清过滤后的数字是否应作为数组返回或在处理时打印?
-
感谢您的回复和帮助。应该在处理它们时打印出来
-
好的。我想我明白了。谢谢你。我删除了 400。谢谢。我只需要了解为什么包含 400。
标签: ruby loops conditional