
基本情報技術者試験 令和7年度 公開問題 科目B、全6問のうちの問5。
出典:令和7年度 基本情報技術者試験 公開問題 科目B 問5(表 1 と表 2 とプログラムは原本の画像を文字に書き起こし、字下げは 1 段を空白 2 つで表した。表 2 の網掛け (表示していない部分) は「(網掛け)」と書いた。プログラムの 2 行にわたる式は原本どおり 2 行で書いた。空欄は[ a ][ b ]で、解答群の表は 1 行の文に組み直した)
次の
予防接種の
関数 f は,
| 病気 X にかからなかった | 病気 X にかかった | |
|---|---|---|
| 予防接種を受けた | 82 | 6 |
| 予防接種を | 58 | 8 |
表は横に送ると続きが見えます。
| 病気 X にかからなかった | 病気 X にかかった | |
|---|---|---|
| 予防接種を受けた | [ a ] | (網掛け) |
| 予防接種を | (網掛け) | [ b ] |
表は横に送ると続きが見えます。
○実数型の二次元配列: f(実数型の二次元配列: data)実数型: t ← dataの要素の和整数型: row ← dataの行数整数型: col ← dataの列数実数型の二次元配列: result ← {row行col列の 未定義の値}整数型: r, cfor (r を 1 から row まで 1 ずつ増やす)for (c を 1 から col まで 1 ずつ増やす)result[r, c] ← (dataの行番号rの要素の和) ×(dataの列番号cの要素の和) ÷ tendforendforreturn result
- アa 44,
b 33 - イa 58,b 8
- ウa 70,b 7
- エa 75,b 2
- オa 80,b 6
- カa 80,b 8
- キa 82,b 6
答えと解説を開く
正解はオです。
プログラムの
ほかの選択肢が違う理由
- ア44 と
33 は、 行の 和 88 と 66 を 半分に した数です。 列の 和で 割り 振っていないので、 かかった 人と かからなかった 人の 比が 入っていません。 - イ58 と
8 は、 表 1 の 予防接種を 受けていない 人の 行を そのまま 写した数です。 計算した 理論度数では ありません。 - ウ70 と
7 は、 列の 和 140 と 14 を 半分に した数です。 行の 和で 割り 振っていません。 - エ75 と
2 は、 行の 和 × 列の 和 ÷ 総数の どの 組からも 出てきません。 - カa は
合っていますが、 8 は 1 行 2 列 (受けた 人で かかった 人) の 理論度数です。 b は 2 行 2 列で、 66 × 14 ÷ 154 = 6 です。 - キ82 と
6 は、 表 1 の 予防接種を 受けた 人の 行を そのまま 写した数です。 計算した 理論度数では ありません。
仕組み
理論度数は、
実際の