最終更新日:2026年10月3日
fe fe-technology algorithm programming pseudocode
まず結論
制御構造の問題では、名前を丸暗記するより、条件をいつ判定するか/何個の処理から選ぶかで切り分けます。
| 制御構造 | 判断基準 |
|---|---|
| 前判定繰返し | 処理の前に判定 → 0回の可能性あり |
| 後判定繰返し | 処理の後に判定 → 最低1回は実行 |
| 双岐選択 | 条件によって2つの処理から選ぶ |
| 多岐選択 | 条件によって複数の処理から選ぶ |
特に重要なのは、前判定繰返しは処理を1回も実行しないことがあるという点です。
直感的な説明
前判定と後判定の違いは、「入口でチェックするか、処理した後でチェックするか」です。
0回で終了
最低1回
試験中は、
前判定 → 0回あり
後判定 → 最低1回
まで圧縮して思い出せれば十分です。
定義・仕組み
前判定繰返し
繰返し処理の先頭で条件を判定します。
Pythonの while もこの考え方です。
while 条件:
処理
最初から条件が成立しなければ、処理は一度も実行されません。
条件判定
├─ 真 → 処理 → 条件判定へ戻る
└─ 偽 → 終了
後判定繰返し
先に処理を実行して、その後で条件を判定します。
処理
↓
条件判定
├─ 続ける → 処理へ戻る
└─ 終了
最初の条件判定より前に処理を通るため、少なくとも1回は処理されます。
双岐選択
条件によって、2つの処理のどちらかを選びます。
条件
/ \
真 偽
↓ ↓
処理A 処理B
「前の処理へ戻る」という意味ではありません。
多岐選択
条件によって、3つ以上を含む複数の候補から処理を選ぶ構造です。
条件
/ │ \
A B C
↓ ↓ ↓
処理1 処理2 処理3
「複数の処理を並列に実行する」という意味ではありません。
科目Aでどう出る?
文章だけで正誤を判断させる問題では、次の特徴語を探します。
「先頭で条件判定」 → 前判定
「最後で条件判定」 → 後判定
「2つから選択」 → 双岐選択
「複数から選択」 → 多岐選択
例えば、
前判定繰返しでは、繰返し処理の本体を1回も実行しないことがある。
これは正しい説明です。
最初の条件判定で終了すれば、処理本体には入りません。
一方、
多岐選択では、二つ以上の処理を並列に行う。
は誤りです。選択と並列実行は別の概念です。
科目Bでどう使う?
科目Bでループをトレースするときも、最初に条件判定の位置を確認します。
条件が先
↓
0回の可能性を考える
処理が先
↓
最初の1回は必ず実行
特に初期値の時点で条件が偽になっている問題では、この違いだけで実行回数が1回ずれることがあります。
条件分岐については、条件分岐の判定順序も合わせて確認すると、選択構造の読み方を整理できます。
よくある誤解・混同
| 誤解 | 正しい見方 |
|---|---|
| 後判定は最初に条件を見る | 処理の後に条件を見る |
| 前判定でも必ず1回は処理する | 最初の判定が偽なら0回 |
| 双岐選択は前へ戻るか次へ進むかを選ぶ | 2つの処理から選ぶ |
| 多岐選択は複数処理を同時実行する | 複数候補から処理を選ぶ |
「繰返し」と「選択」を混ぜないことも重要です。
繰返し → 同じ処理へ戻る
選択 → どの処理へ進むか決める
まとめ(試験直前用)
- 前判定:判定 → 処理。0回の可能性あり
- 後判定:処理 → 判定。最低1回
- 双岐・多岐:「同時実行」ではなく、条件によって処理を選ぶ