入力された整数以下の3の倍数と10で割って余りが3になる整数を出力するコードを以下のように書きました。
Java
1import java.util.Scanner; 2 3class Main{ 4 public static void main(String[] args){ 5 Scanner sc = new Scanner(System.in); 6 int n = sc.nextInt(); 7 for(int i = 1; i <= n; i++){ 8 if(i%3 == 0){ 9 System.out.print(" " + i); 10 continue; 11 }else if((i%=10) == 3){ 12 System.out.print(" " + i); 13 } 14 } 15 } 16}
これを実行すると、10の位が3の整数(31,32、・・・39)が出力されてしまいます。
どこを改善すればよいでしょうか。
n=20 としましたら
「 3 6 9 3 6 9 3 6 9 3 6 9 3 6 9 3 6 9 3 6 9 3 6 9 3 6 9 3 6 9 3 6 9 3 6 9 3 6 9 3 6 9 3 6 9 3 6 ・・・・・・・・・」
「10の位が3の整数(31,32、・・・39)」どころか、無限ループしますが。
回答2件
あなたの回答
tips
プレビュー