WHILEコマンドは、ブール式が返す値がTRUE
の間、文を繰り返し実行するコマンドです。WHILEは、プログラムの内部でのみ使用できます。
パラメータ
文を実行するための条件として機能します。この式がTRUE
の間、文は繰り返し実行されます。この式がFALSE
になると、文の実行は終了し、プログラムは引き続き次の行の実行に移ります。文(または複数の文)の記述によって、ブール式が最終的にはFALSE
になる必要がありますが、そうしないと、このコードは無限ループになります。
ブール式がTRUE
の間に実行される1つ以上の文。DO ... DOENDの間に文を記述することにより、複数の文を実行できます。DO文はWHILE文の直後に記述する必要があります。
使用上の注意
WHILEとIFとの比較
WHILE文は、主にIF...THEN...ELSEコマンドのかわりに使用されます。ブール式がTRUE
の間、プログラム内の1つ以上の文を繰り返し実行する場合は、WHILEを使用します。ブール式がTRUE
のときに一度のみ実行する場合は、IFを使用します。
ブール定数
ブール式には定数を指定できます。文がWHILE TRUEの場合は、プログラムがループを終了できるように、DO ... DOENDの間にBREAK、RETURNまたはEXIT文を必ず記述してください。
ループ内での分岐
BREAK、CONTINUE、GOTOの各コマンドを使用すると、WHILEループの内部または外部に分岐し、それによって文の実行順序を変更できます。