Claude Media
Claudeで基本情報技術者の科目B(擬似言語)を練習する手順 — 誤答分析まで

Claudeで基本情報技術者の科目B(擬似言語)を練習する手順 — 誤答分析まで

基本情報技術者試験の科目Bで出る擬似言語を、Claudeに答えを言わせず段階的に解く手順です。トレース表の照合、解き方の言語化、誤答のタイプ分けをプロンプト付きで紹介します。

基本情報技術者の科目Bは、擬似言語で書かれたプログラムを読み、処理の流れを追って答える問題が中心です。Claudeに問題を丸ごと解かせても、自分でトレースする力は付きません。役立つのは、答えを先に言わせず、自分が書いたトレース表を照合させ、間違えた理由を分類させる使い方です。

この記事では、その手順をプロンプト付きで示します。あわせて、Claude自身が擬似言語を読み違える場面と、その検証方法も扱います。

科目Bはどんな試験で、Claudeに何を任せるか

IPAの試験区分ページによると、基本情報技術者の科目Bは試験時間100分、出題形式は多肢選択式で、出題数と解答数はどちらも20問です。科目Aは90分・60問の四肢択一なので、科目Bは1問にかける時間が長い試験です。実施方式はCBT方式による随時実施で、令和4年度までは上期・下期の実施でした。

日程には注意点があります。IPAの案内では、基本情報技術者のCBT方式の試験は2026年12月28日以降に休止に入ります。試験会場によっては12月27日より前に休止となる場合もあります。2027年1月以降の実施は、2026年秋頃にIPAがウェブページで知らせるとしています。

身体の不自由などでCBT方式を受けられない人には、筆記方式の特別措置試験が年2回あります。申込みにはCBT方式での受験が困難であることの証明書類が必要で、令和8年度の前期は2026年11月14日、後期は2027年3月20日です。前期の申込受付は2026年9月18日(金)17時に終了しており、後期の申込受付期間などの詳細は決まり次第お知らせするとされています。

同ページの期待する技術水準には「上位者の方針を理解し、自らプログラムを作成できる」とあります。科目Bの擬似言語は、この力を試す問題です。読むだけでなく、頭の中で動かせるかが問われます。

Claudeに任せる作業は、次の3つに絞ると学習効果が残りやすくなります。

役割

Claudeに任せる3つの役

  • 答え合わせ役

    自分が書いたトレース表の照合です。

  • 聞き役

    処理の目的を自分の言葉で説明する練習の相手です。

  • 分析役

    間違えた原因の分類と、似た誤りが出そうな箇所の洗い出しです。

逆に、問題文を貼って「答えは何ですか」と聞く使い方は避けます。正解の選択肢は分かっても、次に別の問題が来たときに解けません。記述式の情報処理安全確保支援士の科目Bでも、同じ考え方で練習できます。

擬似言語の記述形式をClaudeに先に渡す

擬似言語は、問題ごとに文法が変わる言語ではありません。IPAは「試験で使用する情報技術に関する用語・プログラム言語など」(Ver.5.1)の別紙2で、基本情報技術者と応用情報技術者の両試験に共通する記述形式を定めています。問題文中に注記がない限り、この形式が適用されます。

主な記述形式を表にまとめます。

記述意味
○手続名意味手続または関数の宣言
型名: 変数名意味変数の宣言
変数名 ← 式意味代入
if / elseif / else / endif意味選択処理。最初に真になった条件だけ実行する
while (条件式) … endwhile意味前判定の繰返し
do … while (条件式)意味後判定の繰返し。処理を先に1回実行する
for (制御記述) … endfor意味繰返し。制御記述の内容に従う

演算子の優先順位は、高い順に「括弧とメンバアクセス」「not・単項の+-」「mod・×・÷」「二項の+-」「関係演算子」「and」「or」です。配列の要素は[ ]の中に要素番号を書いて指定し、二次元配列では行番号、列番号の順に,で区切ります。変数に値が入っていない状態は「未定義」と呼ばれます。

このほか別紙2には、注釈(// と /* */)、手続や関数の呼び出し、論理型の定数trueとfalse、配列の内容を表す{ }が定められています。二次元配列では、内側の{ }が1行分の内容です。代入は←で書き、「等しいか」の判定には関係演算子の=を使います。

優先順位は、左から順に読む癖があると崩れます。階層の高い演算が先に評価されます。

くらべる

優先順位で結果が変わる2つの式

答えは6

5 + 7 mod 3

modは加減より優先度が高いので、先に7 mod 3で1になり、5 + 1で6です。左から読んで12 mod 3とすると0になり、誤りです。

答えは true

true or false and false

andはorより優先度が高いので、先にfalse and falseが偽になり、true or 偽で真です。左から読むと偽になり、誤りです。

forの制御記述は具体的な書き方が別紙2に例示されておらず、要素番号の始まりを決める記述もありません。どちらも問題文に添えられた説明で確かめます。

この仕様は、Claudeに最初に渡しておくと効果があります。渡す方法は2つあります。

  1. 会話の冒頭に、上の表と演算子の優先順位をテキストで貼る
  2. Projectを作り、仕様をProject knowledgeに入れておく

科目Bの学習は同じ仕様を何度も参照するので、Projectにまとめる方が手間がかかりません。Projectの作り方はClaudeで資格試験の過去問から問題を作らせて自己採点する使い方と同じです。

答えを言わせない設定を作る

Anthropicは、教育機関向けのClaude for Educationの発表でLearning modeを紹介しています。この発表によれば、Learning modeはProjectsの中で働く機能で、答えを直接出さず「この問題にどう取り組みますか」と問い返します。加えて、根拠を尋ねるソクラテス式の質問、問題の背後にある基本原理の強調、学習用テンプレートの提示を行うとされています。

この発表はLearning modeを、Claude for Educationの新機能として紹介しています。そこで本記事の手順は、Learning modeがなくても成立するように作ります。同じ振る舞いをプロンプトで指定するだけです。

あなたは基本情報技術者の科目B対策のコーチです。
次のルールで進めてください。
- 私が「答えを見る」と書くまで、正解も正解の選択肢も言わない
- 私の説明に誤りがあれば、誤りの箇所だけを指摘し、修正案は出さずに質問で返す
- 1回の返答で扱う論点は1つにする
- 擬似言語の文法は、Project knowledgeの記述形式に従う
- 問題文に注記がない限り、要素番号の始まりなどはこの記述形式の外から補わず、私に確認する

Learning modeの使い方はClaudeの学習モードで社労士・行政書士・宅建の勉強法を磨くにあります。同じ問答の考え方を、条文の当てはめから擬似言語のトレースに移したものが本記事の手順です。

手順1トレース表を自分で書いてからClaudeに照合させる

科目Bの解き方の核は、変数の値が1行ごとにどう変わるかを表に書くことです。Claudeに先にトレースさせると、ここが空洞化します。自分で書いた表を渡して、間違っている行だけを指摘させます。

練習用に、擬似言語で次のプログラムを用意しました。配列aの要素のうち奇数だけを合計します。要素番号は1から始まるものとして扱います。

整数型: i, s
i ← 1
s ← 0
while (i ≦ n)
    if (a[i] mod 2 ≠ 0)
        s ← s + a[i]
    endif
    i ← i + 1
endwhile

nが5、aが{3, 8, 5, 6, 7}のとき、トレース表は次のようになります。

ループ判定時のia[i]奇数か実行後のs
1a[i]3奇数かはい実行後のs3
2a[i]8奇数かいいえ実行後のs3
3a[i]5奇数かはい実行後のs8
4a[i]6奇数かいいえ実行後のs8
5a[i]7奇数かはい実行後のs15
6a[i](判定で偽)奇数か—実行後のs15

最終的なsは15です。自分で表を書いたら、次のように依頼します。

次の擬似言語のトレース表を自分で作りました。
正解は言わずに、次の順で確認してください。
1. 表の行のうち、間違っている行があれば、その行の番号だけを教えてください
2. 間違いがなければ、最後の行の値だけを私に確認させてください
3. 間違いの原因は、私が説明するまで指摘しないでください
 
[擬似言語のコード]
[私のトレース表]

3番目の指示が要点です。原因を先に言われると、自分で気づく機会が消えます。

手順2解き方を言語化して穴を探す

トレースができるようになったら、「このプログラムは何をしているのか」を自分の言葉で説明する練習に移ります。科目Bでは、処理を順に追わなくても目的が読み取れれば、選択肢を素早く絞れる問題があるためです。

この擬似言語のプログラムが何をしているか、次の3点を私が説明します。
1. 変数ごとの役割(例: sは累計、iは位置を表すカウンタ)
2. ループが終わる条件
3. 最終的に何が得られるか
私の説明を聞いてから、足りない点や曖昧な点を質問してください。
質問は1回に1つだけにしてください。

言語化の練習で見つかるのは、次のような穴です。

  • 変数の役割を「値を入れる箱」としか言えない(何の累計か、何の位置かが言えない)
  • ループの終了条件を「最後まで」としか言えない(i ≦ nかi < nかで結果が変わる)
  • 最終的な値の意味を言えない(合計なのか、個数なのか、最大値の位置なのか)

こうした穴は、選択肢を見る前に見つけるほど修正が楽です。

手順3誤答をタイプ別に分析する

間違えた問題は、何を間違えたのかを分類しないと、次の学習に活かせません。Claudeには、誤答の原因のタイプ分けを手伝わせます。以下の分類は擬似言語で起きやすい誤りを整理した枠組みで、IPAの公式な分類ではありません。

タイプ例
読み違い例≦と<を取り違える。modを除算の結果と混同する。←と=の区別を落とす。優先順位を左から順に読む
動作の見落とし例whileの後判定と前判定を混同する。elseifの評価順を飛ばす
添字の誤り例要素番号の始まりを取り違える。二次元配列で行と列を入れ替える
書き換えの取りこぼし例代入の順序を変えて途中の値が上書きされることを見落とす
時間切れ例長い問題で最後の行まで追いきれない

誤答を分析させるプロンプトは次のとおりです。

次の問題で、私は選択肢イを選びましたが、正解ではありませんでした。
- 私のトレース表: [貼り付け]
- 私が選んだ理由: [自分の言葉]
正解は言わないでください。
私のトレース表と選択理由から、上の5タイプのうちどれに当たるかを推定し、
そのタイプの誤りが出やすい行を、コードの中から指摘してください。

分析結果は、Projectのメモや自分のノートに「タイプ・出題箇所・次に気を付ける点」の3列で残しておくと、弱点の偏りが見えてきます。たとえばi < nを書き間違えた問題は、トレース表の最終行を再確認する習慣で防げます。上の例でwhile (i < n)だったなら、iが5のときに判定が偽になり、5番目の要素7が合計に入らないので、sは8になります。

Claudeのトレースを鵜呑みにしない

Claudeに答え合わせをさせるとき、Claude自身が誤ることを前提に置きます。特に、次の2点は自分で確認します。

  • 要素番号の始まり: 実行環境のプログラミング言語では0始まりが多く、擬似言語の問題は問題文の指定に従います。Claudeが別の言語の規則で読み替えていないか、要素番号の始まりを問題文で確認します。
  • 演算子の意味: ÷やmodの扱いは、IPAの記述形式に従います。Claudeが別の言語の除算規則を持ち込んでいないかを見ます。

Claudeの照合結果が自分の答えと食い違ったときは、どちらが正しいかを実際に動かして確かめます。擬似言語をPythonなどに書き換えて、自分のパソコンで実行します。先ほどの例なら次のようになります(a[0]を捨てて1始まりに揃えた形です)。

a = [None, 3, 8, 5, 6, 7]
n = 5
i = 1
s = 0
while i <= n:
    if a[i] % 2 != 0:
        s = s + a[i]
    i = i + 1
print(s)  # 15

Claudeの説明と、手で作ったトレース表と、実際の実行結果。この3つが一致するまで確認します。食い違いが出たときは、行ごとに変数の値をprintで出して差を探します。

練習の進め方と試験範囲の確認

IPAの試験区分ページには、参考リンクとして試験要綱・シラバス、サンプル問題、公開問題が置かれています。練習の教材はこれらの公式素材を使うのが確実です。シラバス(Ver.9.2)では、アルゴリズムの基本の考え方と、流れ図や擬似言語による表現方法を「修得し、適用する」対象としています。代表的なアルゴリズムとして整列、併合、探索、再帰、グラフ、文字列処理、ファイル処理などが挙がっています。

練習の順序は次の流れが取り組みやすくなります。

流れ

練習の順序

  1. 1

    短い擬似言語のトレース

    10行前後のプログラムを、表を書いて解きます。

  2. 2

    言語化

    手順2で、変数の役割とループの終了条件を説明します。

  3. 3

    アルゴリズムの型

    整列や探索など、シラバスにある型を1つずつ扱います。

  4. 4

    誤答の選び直し

    解けなかった問題を手順3でタイプ分けし、同じタイプの問題を選び直します。

擬似言語の記述形式は改訂履歴のある文書です。Ver.5.0(2022年8月4日改訂)が基本情報技術者の出題範囲変更に対応し、2023年4月の試験から適用されました。Ver.5.1(2023年11月6日改訂)は応用情報技術者の試験向けに記述形式を加え、2024年4月の試験から適用です。教材の版が古いときは、IPAの試験要綱・シラバスのページで最新版と見比べます。

よくあるつまずき

Claudeが答えを言ってしまう。ルールが守られなくなったと感じたら、途中で「ルールを再確認してください」と書くか、Projectのカスタム指示にルールを移します。

トレース表の形式が毎回変わる。列の構成をプロンプトで固定します。たとえば「列は、ループ判定時の変数、条件の結果、実行後の変数」と書いておきます。

問題の図表が読み取れない。二次元配列の図などは、画像で貼るより、行ごとにテキストで書き起こして貼る方が確実です。書き起こす段階で、行番号と列番号の順序を自分で意識できる利点もあります。

公開問題をそのまま貼れるか迷う。問題の利用条件はIPAのサイトで確認します。迷うときは、問題の構造だけを保った自作の短い擬似言語を使う方法もあります。

まとめ

科目Bの練習で任せるのは、自分が書いたトレース表の照合と誤答の分類までです。Claudeと答えが食い違ったときは、記述形式の表と実行結果のどちらに合うかで決めます。

IT系以外の資格試験はClaudeで簿記・FPなど資格試験を勉強する方法が参考になります。同じ考え方を当てはめられます。

参照した一次ソース

この記事の記述は、次の一次ソースと照合しています。更新時に参照先が変わった場合は一覧も更新します。

  1. ipa.go.jp/shiken/kubun/fe.html
  2. ipa.go.jp/shiken/syllabus/doe3um0000002djj-att/shiken_yougo_ver5_1.p…
  3. ipa.go.jp/shiken/syllabus/omgdg50000005kpe-att/syllabus_fe_ver9_2.pdf
  4. anthropic.com/news/introducing-claude-for-education
  5. ipa.go.jp/shiken/2026/cbt-202605-jisshi.html
  6. ipa.go.jp/shiken/2026/r08_fe-sg_exam.html
この記事を共有:XはてブLinkedIn