読み方 : あとはんていループ

後判定ループ【後置判定ループ】post-test loop

概要

後判定ループとはプログラムの繰り返し処理において、ループ本体の処理を実行した後に継続または終了の条件判定を行う方式。条件の内容に係らず処理が最低1回は実行され、利用者からの入力を一度受け付けてから内容を確認するような処理に適している。
後判定ループのイメージ画像

プログラミング言語の制御構文には、ループの継続あるいは終了を決める条件を指定できるものが用意されている。この条件判定を処理の実行後に行う方式が後判定ループであり、実行順序は初回の処理 → 1回目の条件判定 → 2回目の処理 → 2回目の条件判定…という順になる。継続条件が一度も満たされていない場合であっても、構造上、最初の判定が行われる前に処理が実行されるため、最低1回は処理が行われることになる。

C言語、またその構文を継承するJavaJavaScriptPHPなどでは、後判定ループを実現する構文としてdo-while文が用意されている。「do{処理}whilte(条件)」という構文で、doブロック内の処理を実行した後、while節に指定した条件式を評価し、条件が真であれば再度doブロックの処理に戻り、偽であればループを終了する。Visual BasicおよびVBAでは同様の処理がDo Loop UntilやDo Loop Whileとして実装されている。

これに対し、処理を実行する前に条件判定を行う方式を「前判定ループ」という。while文for文など一般的なループ構文の多くがこれに分類される。この方式では、最初の判定で条件を満たさない場合、内部の処理が一度も実行されないままループを終了する。後判定ループは、利用者に入力を促し、その入力値が不正であれば再入力を求めるような処理、あるいは、処理結果を確認してから次の反復を判断する状況で用いられることが多い。

なお、後判定ループの内部でbreak文などを使えば、条件判定を待たずに途中でループを抜けることも可能である。この場合、while節の条件式は通常の終了条件を指定するために用いられるに留まる。実行順序が直感的である一方、初期状態で意図しない処理が行われないよう、データの初期化や条件式の設計には注意を要する。

(2026.6.19更新)
 
この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。