前提
javaで計算機能を作成しています。2桁同士の足し算を5回繰り返し行いたいです。ちなみに2桁の生成はint n = Math.random()*99)+1でおこないます。
実現したいこと
・ランダムに生成された数が2桁でない場合、繰り返し2桁の整数を生成したい
・5回は必ず出力される
発生している問題・エラーメッセージ
該当のソースコード
java
1import java.io.*; 2class Sample{ 3 public static void main(String[] args)throws IOException{ 4 5 for(int i = 1; i <= 5; i++){ 6 7 int n1 = (int)(Math.random()*99)+1; 8 int n2 = (int)(Math.random()*99)+1; 9 if(n1< 10 || n2 <10){ 10 i++; 11 continue; 12 } 13 int answer = 0; 14 answer = n1 + n2; 15 System.out.print(n1+ "+" + n2 + "="); 16 17 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 18 String str = br.readLine(); 19 int res = Integer.parseInt(str); 20 21 if(answer == res){ 22 System.out.println("正解"); 23 }else { 24 System.out.println("不正解"); 25 26 } 27 } 28 } 29}
試したこと
continue;の前に iをインクリメントすれば、指定された回数減ることなく、繰り返し出力されると考えた。
しかし、実際には1桁の数が生成された場合、出力される回数が減ってしまった。
補足情報(FW/ツールのバージョンなど)
回答2件
あなたの回答
tips
プレビュー