我试图看看我可以用for循环做些什么很酷的事情。 这是一个简单的代码,用于打印在10_000和100_000之间可被321整除的所有数字。
但它不起作用:
for(int i=10000;i<=100000 && i%321==0;i++){
println(i);
}
我能否在第二和第三个分号之间放置条件语句是不是真的? 这只是输出任何东西,所以我假设没有我的值是真的。
答案 0 :(得分:6)
一旦i % 321 == 0
为假,循环就会停止,它将立即停止。尝试:
for (int i = 10000; i <= 100000; i++) {
if (i % 321 == 0) {
println(i);
}
}
或者:
for (int i = 10000 + (10000 % 321); i <= 100000; i += 321) {
println(i);
}
答案 1 :(得分:2)
问题在于你的循环条件。
when (i = 10000)
i % 321 = 10000 % 321 = 49
So the condition i % 321 == 0, is false
你需要尝试这样的事情才能工作
for (int i = 10000; i <= 100000; i++) {
if (i % 321 == 0) {
println(i);
}
}