条件分岐と繰り返し②
do-while文(後判定)
繰り返し処理実行してから条件式を判定する
回数を決めて繰り返す
ループ変数
プログラムの中で何回繰り返したかを数える
1 初期化処理
繰り返しの前に1度だけ行う
コンピュータは0から始める方が便利
2 条件式による判定
まだ繰り返すかやめるか判定
3 カウントアップ処理
繰り返すたびに1つずつ増やす
ループ変数は命名規則に沿っていればどんな名前でも良いが
通常「i」を使う
複数必要になったらj、k・・・と名前をつけていく
(ex)
int i = 0; //初期化処理
while(i<5){ //条件式による判定
System.out.println("今日は勉強!");
i++; //カウントアップ処理
}
for文
回数を決めて繰り返しを行う
書き方
for(初期化;条件式;後処理){
条件式が「はい」のときにに繰り返す処理
}
・for文は丸カッコ()の中に必ず;(セミコロン)を2つ書くこと
・後処理はループ変数のカウントアップを通常行うが、それ以外のこともある
(ex)
for(int = 0; i<5; i++){
System.out.println("今日は勉強!");
}
・繰り返しの3つの処理を1行にまとめる
・なるべくwhile文よりfor文を使う
・for文の丸カッコ()の中で変数を宣言した場合、変数のスコープはfor文の中だけ
for文の処理の流れ
初期化
↓
条件式(いいえ)→終了
↓(はい)
繰り返す処理
↓
後処理
↓
条件式に戻る
※繰り返す処理と後処理の順序が間違えやすいので注意
制御構文のネスト
多重構造のことを「入れ子」や「ネスト」という
2重ループ
繰り返し構造の中で、さらに繰り返し処理を行う構造のこと
(ex)
for(int i =0; i<2; i++){
for(int j=0; j<2; j++){
System.out.println("i="+i);
System.out.println("j="+j);
}
}
繰り返しの中断
break;
break文が実行されていくとループの外に出ていく
continue;
continue文が実行されるとループの最後(ブロックの内側)に処理が移る
無限ループ
永久に繰り返しを続ける制御構造
意図的に無限ループを作る場合、必ずどこかでbreak文を入れて
ループを中断させる必要がある
・While(true){
//繰り返す処理
}
・for( ; ; ){
//繰り返す処理
}