解答
num++;
の行をif (~){~}
の後にずらせば良いです。
解答
public class Main {
public static void main (String [] args) {
int num = 0;
while (true) {
System.out.println (num);
if (num >= 7) {
break;
}
num++;
}
System.out.println ("breakしました");
}
}
結果
0
1
2
3
4
5
6
7
breakしました
おまけ
答だけではアレなので、元のソースを見てみましょう。
元のコード
public class Main {
public static void main (String [] args) {
int num = 0; // 整数numを0に初期化
while (true) { // 無限に繰り返し
System.out.println (num); // numを出力
num++; // numを1増やす
if (num >= 7) { // numが7以上なら
break; // 繰り返しを抜ける
}
}
System.out.println ("breakしました");
}
}
num
は0
から順に増えていきますね。
仮に6
まで順当に増えて、6
が出力println
されたとしましょう。
次の行のnum++
で、6
だったnum
は、1
増えて7
になりますね。
そして、次の行のif (num >= 7) {
では、条件が成立するので、繰り返しを抜けてしまいます。
あらあら、6
で終わってしまいました。
ここは、出力した値のままで条件を検査する必要がありますよね?
ですから、num++
を条件検査の後に移動して、break
せずに繰り返しを続けるときだけ実行されるように変更したのです。