入力された整数以下の3の倍数と10で割って余りが3になる整数を出力するコードを以下のように書きました。
Java
import java.util.Scanner; class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); int n = sc.nextInt(); for(int i = 1; i <= n; i++){ if(i%3 == 0){ System.out.print(" " + i); continue; }else if((i%=10) == 3){ System.out.print(" " + i); } } } }
これを実行すると、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)」どころか、無限ループしますが。
まだ回答がついていません
会員登録して回答してみよう