擬似コードの読み方
まず結論
擬似コードはプログラミング言語に依存しない「アルゴリズムの書き方」です。科目Bの問題はほぼすべてこの擬似コードで出題されます。読むコツは「変数に何が入っているか追いながら1行ずつ実行する」こと。怖くありません!
IPA擬似コードの基本要素
代入
x ← 5
xに5を代入(←が代入演算子)
表示
x を表示する
xの値を画面に出力
条件分岐
もし x > 0 ならば
...処理...
もし終わり
繰り返し
i を 1 から n まで繰り返す
...処理...
繰り返し終わり
配列アクセス
a[i] ← 値
a[1], a[2], ...
手続き・関数
手続き 名前(引数)
...処理...
手続き終わり
例1:1〜5の合計を求める
// 1 から 5 までの合計を計算して表示する
goukei ← 0 // 合計を入れる変数を0で初期化
i を 1 から 5 まで繰り返す
goukei ← goukei + i // goukeiにiを加算
繰り返し終わり
「合計: 」, goukei を表示する // → 合計: 15
| i | goukei(実行後) |
|---|---|
| (初期) | 0 |
| 1 | 0 + 1 = 1 |
| 2 | 1 + 2 = 3 |
| 3 | 3 + 3 = 6 |
| 4 | 6 + 4 = 10 |
| 5 | 10 + 5 = 15 |
例2:配列の最大値を求める
// 配列 a[1..5] の最大値を求める
a ← {3, 7, 1, 9, 4}
max ← a[1] // 最初の要素で初期化
i を 2 から 5 まで繰り返す
もし a[i] > max ならば
max ← a[i] // より大きければ更新
もし終わり
繰り返し終わり
「最大値: 」, max を表示する // → 最大値: 9
最大値パターンの鉄則:① 最初の要素で初期化 → ② ループで比較 → ③ 大きければ更新。このパターンは科目Bで何度も出てきます!
擬似コードを読む5ステップ
1
変数の一覧を書き出す
どんな変数が登場するか把握する(例: i, max, goukei)
2
初期値を確認する
各変数の最初の値を確認(← での代入)
3
1行ずつ実行してトレース表に記録
ループがあれば条件が成り立つ間繰り返す
4
ループ終了条件を確認する
「i が n 以下の間」→ i > n になったら終了
5
最終的な出力(返り値)を確認
「を表示する」「を返す」の行が答えになる
🎯 試験での出方
- 擬似コードを実行した時の出力値を問う問題(最頻出)
- 擬似コードの空欄(□)に入る式や条件を選ぶ問題
- 変数の値の変化をトレース表で追う問題
- 「このコードはどんな処理をするか」→ アルゴリズムの目的を答える問題
⚠️ よくある間違い
- 「←は比較演算子」→ ✗ ←は代入。比較は =(等しい), ≠(等しくない), <, > など
- 「繰り返しの条件を読み飛ばす」→ ✗ 「i を 1 から n まで」は i=1,2,...,n の合計n回実行
- 「変数の値を頭で追おうとする」→ ✗ 必ずトレース表を手書きで書く。頭だけでは間違えやすい
✍️ 確認クイズ
Q1. IPAの擬似コードで「x ← 10」が意味することはどれか。
✅ 正解は②。IPAの擬似コードでは「←」が代入演算子。「x ← 10」はxに10を代入することを意味します。
Q2. 以下の擬似コードを実行した結果として正しいものはどれか。
「goukei ← 0 / i を 1 から 4 まで繰り返す / goukei ← goukei + i / 繰り返し終わり / goukeiを表示する」
「goukei ← 0 / i を 1 から 4 まで繰り返す / goukei ← goukei + i / 繰り返し終わり / goukeiを表示する」
✅ 正解は②。1+2+3+4=10。i=1:goukei=1、i=2:goukei=3、i=3:goukei=6、i=4:goukei=10。
Q3. 擬似コードを読む際の基本的なアプローチとして適切なものはどれか。
✅ 正解は③。擬似コードは必ずトレース表を書きながら1行ずつ追っていくのが確実。変数の値の変化を書き留めることで間違いを防げます。
Q4. 「a ← 3 / b ← a × 2 + 1 / c ← b - a」を実行後のcの値はどれか。
✅ 正解は③。手順通りトレース:a←3、b←3×2+1=7、c←7-3=4。擬似コードは上から順番に1行ずつ実行します。b=7はa=3を使って計算し、c=4はb=7とa=3を使って計算します。
Q5. IPAの擬似コードで「手続き fib(n)」のように定義された処理を呼び出す場合の書き方として正しいものはどれか。
✅ 正解は③。IPAの擬似コードでは手続き(関数)はfib(5)のように「手続き名(引数)」の形式で呼び出します。手続きが値を返す(「○○を返す」がある)場合はresult ← fib(5)のように戻り値を変数に代入します。「手続き終わり」が「その手続きの定義の終わり」を示します。
Sponsor Link