科目Bの模擬試験が欲しい

まーぼさん  
FE シルバーマイスター
(No.1)
管理人様

いつもお世話になっております。

スレッドのタイトル通りなのですが、基本情報技術者試験ドットコムに科目Bの模擬試験を追加しませんか?

私は現状の基本情報技術者の試験の課題は、科目Bの問題が少ないことだと考えています。そのため、科目Bの模擬試験があるといいと思いました。

先日、ChatGPT5.2がリリースされ、専門性の高さが目を引くものとなっています。ChatGPT5.2を駆使すれば、模擬問題は簡単に作れると考えています。

現在、私は、フリーでエンジニアをやっておりますので、もちろん、模擬問題・解答・解説の作成の協力もできます。

ぜひ、ご検討のほど、よろしくお願いします。
2025.12.15 13:29
まーぼさん  
FE シルバーマイスター
(No.2)
chatGPT5.2Thinkingを使って問題を作ってみました。

###プロンプト
基本情報技術者試験の科目Bの疑似言語の問題を作成してください。問題の雰囲気は、IPA公式が出しているサンプル問題を真似してください。問題・解答・解説を作成してください。問題のテーマは以下で記したようにしてください。

問題のテーマは、バブルソートで、一つの空欄を埋めるスタイルの簡単な問題にしてください。
###

メソッド名や変数名が大文字になっていたので、修正。
while文ではなく、for文を使ってほしかったのでその旨を伝える。

###プロンプト
メソッド名・変数名は小文字から始めてください。while文ではなく、for文を使った問題にしてください。
###

まだ問題が難しいように感じたので、修正

###プロンプト
もっとバブルソートの動きが分かりやすいような問題にしてください。
###
2025.12.15 14:35
まーぼさん  
FE シルバーマイスター
(No.3)
上記のプロンプトで作成した問題・解答・解説がこちら。

問題(科目B 疑似言語・空欄補充)

次の手続 bubbleSortOnce は,配列 a[0..n-1] に対して バブルソートの1回の走査(1パス) を行う。
この1パスが終わると,未整列部分の中で最大の要素が 末尾側(添字 end の位置) に移動する。

手続中の空欄【 】に入れる最も適切な式を選べ。

手続 bubbleSortOnce(a, end)
(end は走査対象の末尾の添字を表す)
for j ← 0 to 【 】 do
    if a[j] > a[j + 1] then
        temp ← a[j]
        a[j] ← a[j + 1]
        a[j + 1] ← temp
    end if
end for
選択肢
ア:end
イ:end - 1
ウ:end + 1
エ:end - 2

解答

イ:end - 1

解説

この1パスでは,a[j] と a[j + 1] の 隣接要素 を順に比較して交換する。
比較で参照するのは常に a[j + 1] までなので,j が取り得る最大値は「j + 1 が end になるとき」である。

末尾の添字が end のとき,j + 1 = end を満たす最大の j は end - 1

したがって,j の繰返し範囲は 0 から end - 1 までとなり,空欄【 】には end - 1 が入る。

この設定により,走査の最後で a[end - 1] と a[end] が比較され,最大要素が右へ押し出されて a[end] に到達する(確定する) というバブルソートの動きが成立する。
2025.12.15 14:42
momoさん 
(No.4)
AIが作成した問題の評価が難しいように感じます。基本情報について、強化学習されているAIならいいと思いますが。

範囲が被っているものは、応用情報や情報セキュの問題や改問して、問題を入れるのはいかがでしょうか? IPAの最近の傾向を掴めるのではないかと思います。
2025.12.15 20:32
まーぼさん  
FE シルバーマイスター
(No.5)
momoさん

ご意見ありがとうございます。

まず、私が言っているのは科目Bだけですので、科目Aのことは無視してください。

AIが作成した問題の評価が難しいとのことですが、これは本家と同じくIRT形式で評価するといいと思います。もちろん、AIが生成したそのままで使うのではなく、人間が精査したものを問題として採用するつもりです。
2025.12.15 21:16
mokさん 
(No.6)
普通に問題の完成度が低すぎないか?
例として出したのがこのレベルだと正直、使い物にならないのでは?

生成した設問を人間が修正するなら基本的なアルゴリズムであればAIに頼らず一から作ったほうが早いと思う
難問だけに絞ったほうがAIの使い方と学習法として有効に感じる
2025.12.16 00:45
まーぼさん  
FE シルバーマイスター
(No.7)
mokさん

ご意見ありがとうございます。

問題の完成度が低いとのことですが、どの点を見てそう感じたのか、具体的に教えていただけますと幸いです。

ちなみに、私は、難しい問題であればいいとは思っていません。バブルソートの、「最大値が泡のように浮き出るイメージ」が掴める問題ですので、私はいい問題だと思いました。
2025.12.16 02:06
momoさん 
(No.8)
合格点が6割なので、私は過去問と公開問題の理解だけで合格できると思います。

不合格の方は、過去問の解き方やポイントを理解してないため、類問や応用問題に対応ができていないのではないかと思います。

合格点が8割でしたら、細かい対策が必要かもしれませんが。

また、応用情報と情報セキュの近年の問題も、被っている分野は、AもBも、対策になると思います。
2025.12.16 03:02
mokさん 
(No.9)
問題が実際の設問とかけ離れてるのと単純に不出来

問題の定型文からは逸脱しているので、修正ではなく全文構築になる
"走査"、"1パス"といった単語は使われない
独特な表し方で、解説も言葉足らずで微妙
手続きも全て書かれておらず尻切れで型宣言が省略されている

各種ソートを理解するだけならテキストや動画で図解付きの解説で十分でしょ
わざわざAIに出来の悪い設問を作らせてもなと感じるね
AIの長所が全く生かされてない
2025.12.16 03:54
まーぼさん  
FE シルバーマイスター
(No.10)
お二方

質問へのご回答ありがとうございました。

ちなみに、お二方の属性(合格済みなど)はどういったものですか?
2025.12.16 06:29
まーぼさん  
FE シルバーマイスター
(No.11)
GPTsを作成しても模擬問題を作成してみました。

問1(プログラムの基本要素)

次のプログラムは,引数として与えられた整数 x が正の偶数かどうかを判定する関数である。
○論理型: isPositiveEven(整数型: x)
  if (          )
    return true
  else
    return false
  endif

解答群

ア x mod 2 = 0

イ x > 0

ウ (x > 0) and (x mod 2 = 0)

エ (x ≥ 0) or (x mod 2 = 0)
2025.12.16 08:06
まーぼさん  
FE シルバーマイスター
(No.12)
GPTsを使った模擬問題です。

基本情報技術者試験 科目B
模擬試験(問題冊子)
【注意事項】

全問必須。

擬似言語の記法はIPA準拠とする。

配列の要素番号は 1から始まる。

「未定義」は値が格納されていない状態を表す。

問1(プログラムの基本要素:条件分岐)

次の関数 judgeScore は、テストの点数 score(0以上100以下の整数)を受け取り、
次の基準で評価文字列を返す。

80点以上: "A"

60点以上80点未満: "B"

60点未満: "C"

○文字列型: judgeScore(整数型: score)
  if (            )
    return "A"
  elseif (            )
    return "B"
  else
    return "C"
  endif

解答群
ア score ≧ 80
イ score ≧ 60
ウ score < 80
エ score ≧ 60 and score < 80
オ score < 60
2025.12.16 08:32
まーぼさん  
FE シルバーマイスター
(No.13)
GPTsで作成した模擬問題です。

少しむずかしめにしてもらうようにしました。

問5(二重ループ × 条件の組合せ)
【前提条件】

次のプログラムは,配列 A の中で
異なる要素の組(i ≠ j)で,値が等しいものの個数を数える。

【問題】

A ← {1, 2, 1, 1} のとき,count の最終値はどれか。

整数型の配列: A ← {1, 2, 1, 1}
整数型: i, j, count ← 0

for (i を 1 から Aの要素数 まで 1 ずつ増やす)
  for (j を i+1 から Aの要素数 まで 1 ずつ増やす)
    if (A[i] = A[j])
      count ← count + 1
    endif
  endfor
endfor

【選択肢】

ア 2
イ 3
ウ 4
エ 6
2025.12.16 08:56
菊姫さん 
(No.14)
なんか、情報処理試験の問題と言うより、
プログラミングの実務の参考書って感じがするのは自分だけでしょうか。
2025.12.16 08:58
まーぼさん  
FE シルバーマイスター
(No.15)
GPTsのプロンプト

あなたは、IPA独立行政法人情報処理推進機構のスタッフです。基本情報技術者試験の科目Bの模擬試験と解答・解説を作成してください。問題冊子の例は、知識を存分に生かして、雰囲気を寄せてください。合格までの戦略も知識を存分にいかしてください。必ず問題は、問題の前提条件と問題の内容、選択肢という構造にしてください。間違いがないように熟考してください。誤りがある可能性がある場合は、断定しないよう気を付けてください。ユーザーからの問題の質問については、丁寧に、中学生でもわかるように、図解や前提知識、考え方を共有して説明してください。ユーザーの要望に応じて、問題の難易度を設定してください。

知識として、IPAが公開しているサンプル問題・公開問題。
NoteBookLMで、科目Bの出題範囲を出力させたPDF

を使っています。
2025.12.16 09:07
まーくんさん 
(No.16)
A試験は範囲が広いから模擬試験の量はいると思いますが、
B試験であればサンプル問題だけで充分だと感じます。A試験と違い覚えるべきことは少ないし、問題が違ってもやることはたいして変わらないので…。

自分は去年合格しましたが、B試験だけなら現状のサンプル問題だけで問題なかったです。
2025.12.16 10:22
momoさん 
(No.17)
Bに関しては、旧制度の古い問題の方が難しいので対策になると思います。
2025.12.16 16:19
momoさん 
(No.18)
応用情報の午後のアルゴリズムとセキュリティに絞って、今数年分を一通りチェックしましたが、基本情報の対策に十分なります。
一部の難問以外さほどレベルは変わらないと思います。
2025.12.16 17:23
電タックさん 
FE ブロンズマイスター
(No.19)
面白い試みだと思いますので私は賛成です。

今回基本情報の科目Bに着目していますが次回以降応用情報や高度情報もすべてCBT化するとのアナウンスがされています。
もし基本情報と同様に過去問の排出が限定的な場合、近い未来でその区分における科目B演習のみならず科目Aも不足することが予測できます。

いきなり完成された問題セットや長文問題の作成は難しいとしても、トライアルとして基本情報・情報セキュリティマネジメントの科目Bのように問題箇所がピンポイントで小さい物から試してどの程度のことなら可能なのかというのを試してみるのは大いに価値があると思いました。
2025.12.16 20:22
momoさん 
(No.20)
もちろん意味のある問題であれば、問題がたくさんあった方がいいと思います。

下記は私の仮説ですが、作問された問題が実際の現場のコードの方向性が違うため、作問された問題やコードに関し、精査や評価が必要と思います。

Bの試験問題の件、正直通常の実装でありえないような実装のものが目立ちます。最近の新規開発の現場で、よく使われるTypeScriptやGoではclassはつかいません(そもそもGooには classはない)。どちらかといえば誰から見てもわかるコードで実装されてます。

試験では、classを使ったり、コードを複雑にしないと正答率があがり問題にならないからだと思いますが。そのようなどちらかといえば問題の正答率を下げるために意地悪な実装の問題を、基本情報の問題としていい感じに、生成AIが果たして作問してくれるかが甚だ疑問に感じます。

また、基本情報の近年の問題やその傾向をプロンプトを与えたとしても元々の学習データが、そのような実装はよくないと判断し、わかりやすい実装の問題を作問するのではないかと思います。

ただ、何度か修正を加えながら作ると基本情報のいい対策の問題ができると思いますが、その問題の最終的な精査や評価は、この試験を精通している方がやった方がいいと思います。
2025.12.17 23:26
まーぼさん  
FE シルバーマイスター
(No.21)
momo さん

ご意見ありがとうございます。

「科目Bを実務で活かせるような試験であって欲しい」というのはあくまでも考え方の一つであり、それが絶対的な意見ではない、と私は思います。

私が、科目Bで身につけられる力は、「論理的思考力」だと考えています。機械は、文法に忠実に書かないと、人間とは違って、察してはくれません。そのため、論理的にコードを組み立てる必要があるのです。

私が、最初に提示したバブルソートの問題も、「論理的」には正しいと思います。確かに、実際の科目Bの表現とは違ったため、一見するとAIを活用できてないという意見も十分に理解できます。ただ、言葉の表現方法は、論理を飾る、アクセサリーにすぎないと私は思います。

論理的思考力を身につければ、上位資格の応用情報の取得や、日常生活でも楽になることでしょう。少なくとも、私はそう信じています。
2025.12.18 08:16
初学者三さん 
(No.22)
問題数の少なさを補う為の独自問題は良いと思いますが、過去問道場としての役割として過去や公式の公開問題のみを扱う事に意味があると感じています。

現状過去問から同じ問題が試験で流用されるので
その有効性を薄めてしまう独自問題の模試は過去問道場としては不必要かなと思いました

ただ試み自体はとても良いと思います。
模試はあくまで模試なので地力を付けるには独自問題や応用の過去問なども勉強になると思います。
2025.12.18 14:33
まーぼさん  
FE シルバーマイスター
(No.23)
初学者三 さん

ご意見ありがとうございます。
「過去問道場」という名前なので、過去問を取り扱うことに意味があるという意見ですね。確かに一理ありすね。

基本情報といえばもう過去問道場と、デファクトスタンダード化しているので、当サイトでやった方がいいという考えだったのですが、個人でやった方がいいのかもしれないですね。
2025.12.18 14:55
近衛中将さん 
(No.24)
他の方がコメントしているように、試みとしては良いと思いますが、
過去問道場とは別コンテンツとして立ち上げるのが良いと思います。
よって、道場の管理人さんに依頼するのではなく、スレ主さんが
自らコンテンツを立ち上げてみてはいかがでしょうか。
2025.12.18 14:59
まーぼさん  
FE シルバーマイスター
(No.25)
近衛中将 さん

ご意見ありがとうございます。

そうですね!個人でやってみます!

返信いただきありがとうございました😊
2025.12.18 15:09
管理人 
(No.26)
返信が遅くなり申し訳ございません。

科目Bの公開問題が少ししかない現状、また今般の生成AIの性能向上を考慮すれば、科目B問題の作成は良いチャレンジになると思います。
2025.12.30 23:46

返信投稿用フォーム

※CBT試験では出題内容の公開が禁止されているため、直接的・間接的を問わず、出題内容や難易度を尋ねる質問は厳禁です。
※宣伝や迷惑行為を防止するため、当サイト、姉妹サイト、IPAサイト以外のURLを含む記事の投稿はできません。

投稿記事削除用フォーム

投稿番号:
パスワード:

その他のスレッド


Pagetop