科目Bの解き方|擬似言語アルゴリズムの読み方とコツ

基本情報技術者試験でもっとも「差がつく」のが科目Bです。ここでは、多くの人がつまずく 擬似言語アルゴリズムの読み方を、基礎の記法から解く手順、頻出のワナまで順に解説します。

科目Bとは(配点と内容)

科目Bは20問・100分・1,000点満点(基準点600点)。中心は アルゴリズムとプログラミングで、加えて情報セキュリティ分野からも出題されます。 特定のプログラミング言語ではなく、試験共通の擬似言語で書かれたコードを読み解きます。

なぜ「シンプルなのに難しい」のか

当サイトの取材で、受験者がこう表現していました。

「シンプルな構造すぎて、逆に難しいと感じる」

科目Bの問題文は複雑ではありません。難しさの正体は、短いコードのロジックを、頭の中で正確に最後まで追いきる集中力にあります。 これは知識の暗記では身につかず、手を動かした反復でしか鍛えられません。だから早めの着手が効きます。

擬似言語の読み方(最低限これだけ)

擬似言語は日本語混じりで読みやすい記法です。よく出る要素はこれだけ押さえれば十分に読めます。

解く手順:トレース表を作る

おすすめは、変数の値の変化を表にして書き出す方法です。たとえば「各桁の合計を求める」次のコードを、n=1234 で追ってみます。

○整数型: digitSum(整数型: n)
  整数型: s
  s ← 0
  while (n > 0)
    s ← s + (n mod 10)
    n ← n ÷ 10
  endwhile
  return s
ループ回数n mod 10s(合計)n ÷ 10 後のn
1回目44123
2回目3712
3回目291
4回目1100

n が 0 になって while を抜け、戻り値は 10。こうして1行ずつ・1変数ずつ書き出せば、複雑に見える問題も必ず追えます。

頻出のワナ(ここで失点する)

これらのワナを狙ったオリジナル問題を用意しています。実際に手を動かして確かめてください → 科目B 練習問題(自動採点・解説つき)

情報セキュリティ分野の対策

科目Bにはアルゴリズム以外に情報セキュリティも出ます。こちらは用語と典型的な対策の理解が中心で、 アルゴリズムより短期で得点源にしやすい分野です。認証・暗号・マルウェア・アクセス制御といった頻出テーマを、科目Aの学習と兼ねて押さえておきましょう。

練習のしかた

  1. まずはトレース表を紙に書き、確実に正解を出せるようにする
  2. 同じ型(探索・集計・整列など)の問題を繰り返し、パターンを体に入れる
  3. 慣れてきたら表を省略し、時間を計って「読み切る速さ」を鍛える

ただし科目Bは、IPAが公開している問題が全部で50問しかありません(本番およそ2.5回分)。 繰り返すうちに答えを覚えてしまうので、正答率は指標になりません。 入手できる問題の内訳と、少ない問題数で仕上げる進め方は 科目Bの過去問は50問だけで詳しく解説しています。

それでも科目Bだけ伸び悩むなら(必要な人だけ)

無料の練習問題と過去問で多くの人は十分戦えます。そのうえで「科目Bの読解だけがどうしても伸びない」人向けの、任意の補強策です。

よくある質問

科目Bはプログラミング経験がないと解けませんか?

特定の言語の経験は不要です。科目Bは共通の「擬似言語」で出題され、変数・代入・条件分岐・繰り返しといった基本を読み取れれば解けます。むしろ「1行ずつ正確に追う(トレース)」訓練の方が重要です。

トレースが苦手です。速くする方法は?

慣れが最大の近道です。まずは紙に変数の値の変化を書き出す「トレース表」で確実に追えるようにし、同じ型の問題を繰り返すうちに、頭の中だけで追えるようになっていきます。速さは正確さの後からついてきます。

情報セキュリティも科目Bで出ますか?

はい。科目Bはアルゴリズム・プログラミングが中心ですが、情報セキュリティ分野からも出題されます。用語と典型的な対策を押さえておけば得点源にしやすい分野です。最新の出題構成はIPA公式をご確認ください。

出典・ご注意

本記事・ツールの内容は執筆時点の情報にもとづく参考情報です。試験制度・日程・出題範囲は変更される場合があるため、受験の際は必ずIPA(情報処理推進機構)の公式情報をご確認ください。合否・学習成果を保証するものではありません。

最終更新日: