for循環問題
public class HelloWorld {
? ? public static void main(String[] args) {
int sum = 0; // 保存不能被3整除的數之和
// 循環變量 i 初始值為 1 ,每執行一次對變量加 1,只要小于等于 100 就重復執行循環
for (int i = 1;i<=100&&(i%3!=0);i++) ? ? ? ? ? ? ? ? ? ?{
// 變量 i 與 3 進行求模(取余),如果不等于 0?
sum = sum + i; // 累加求和
}
System.out.println("1到100之間不能被3整除的數之和為:" + sum);
}
}
運算結果:1到100之間不能被3整除的數之和為:3
正確答案應該為 3367
? 該 題目 要求 是:計算1到100之間不能被3整除的數之和?
我算出的答案是3,我想請問哪里出錯了?
求大神賜教
2016-01-29
i % 3 != 0這個判斷條件不應該放在for語句里0.0 循環到3就直接跳出for循環啦。
把這個條件判斷放到里面去就行了。
public?class?HelloWorld?{ ????public?static?void?main(String[]?args)?{ ???? int?sum?=?0;?//?保存不能被3整除的數之和 ???? //?循環變量?i?初始值為?1?,每執行一次對變量加?1,只要小于等于?100?就重復執行循環 ???? for?(int?i?=?1;i?<=?100?;i++)????????????????????{ ???? //?變量?i?與?3?進行求模(取余),如果不等于?0? ???? if(i?%?3?!=?0){ ???? sum?=?sum?+?i;?//?累加求和 ???? } ???? } ???? System.out.println("1到100之間不能被3整除的數之和為:"?+?sum); ????} }2016-01-31
i=3;
i%3==0;
for條件不成立退出循環