次の記述中の [a] と [b] に入れる正しい答えの組合せを,解答群の中から選べ。…
科目B アルゴリズムとプログラミング 科目B 問5
次の記述中の [a] と [b] に入れる正しい答えの組合せを,解答群の中から選べ。ここで,配列の要素番号は1 から始まる。予防接種の病気X に対する予防効果を調査するために集めたデータの集計結果を基に,病気X にかかるかどうかが,予防接種の有無に影響されないと仮定した場合の人数を計算する。この人数を理論度数という。表1 に集計結果の例を示し,表2 に表1を基に計算した理論度数を示す。関数f は,引数data で受け取った集計結果を基に計算した理論度数を返す。引数と戻り値は二次元配列で,その行が表の行,その列が表の列に対応する。
正答 オ
正答は オ。a:80、b:6 の組合せです。
【理論度数の求め方】
プログラムのresult[r, c] ←(data の行番号 r の要素の和)×(列番号 c の要素の和)÷ tのとおり、理論度数は「その行の合計 × その列の合計 ÷ 総数」です。
予防接種の有無と、病気 X にかかるかどうかが無関係なら、どの行でも、かかった人とかからなかった人の割合が全体と同じになるという考え方です。
【表1 の合計】
かからなかった かかった 行の和
受けた 82 6 88
解説の続きをみる続きを閉じる
受けていない 58 8 66
列の和 140 14 t=154
【トレース】
r=1,c=1(a) 88 × 140 ÷ 154 = 12,320 ÷ 154 = 80
r=1,c=2 88 × 14 ÷ 154 = 1,232 ÷ 154 = 8
r=2,c=1 66 × 140 ÷ 154 = 9,240 ÷ 154 = 60
r=2,c=2(b) 66 × 14 ÷ 154 = 924 ÷ 154 = 6
4 つの理論度数の合計は 80 + 8 + 60 + 6 = 154 で、総数と一致します。
行の和(88,66)と列の和(140,14)も、表1 と同じになります。
【ほかの選択肢】
キ(82,6) 誤り
→ 表1 の1行目(予防接種を受けた人)の実際の人数を並べた値
イ(58,8) 誤り
→ 表1 の2行目(予防接種を受けていない人)の実際の人数を並べた値
→ どちらも実際の人数で、理論度数ではない
カ(80,8) 誤り
→ b に、予防接種を受けてかかった人の理論度数
(88 × 14 ÷ 154 = 8)を入れている
ア(44,33) 誤り
→ 行の和を 2 で割った値(88 ÷ 2、66 ÷ 2)
ウ(70,7) 誤り
→ 列の和を 2 で割った値(140 ÷ 2、14 ÷ 2)
エ(75,2) 誤り
→ 行の和 × 列の和 ÷ 総数 の計算に合わない
【関連する知識】
実際の度数と理論度数の差が大きいほど、二つの項目は無関係とはいえなくなります。この差を使って独立性を調べるのがカイ二乗検定です。
出典:令和7年度 基本情報技術者試験 科目B 公開問題 問5(独立行政法人情報処理推進機構)出典元ページ
最終更新日
「科目B アルゴリズムとプログラミング」のほかの問題
- 2024年度(令和6年度)公開問題 科目B 問5次のプログラム中の [a] ~ [c] に入れる正しい答えの組合せを,解答群の中から選べ
- 2026年度(令和8年度)公開問題 科目B 問1次のプログラム中の [ ] に入れる正しい答えを,解答群の中から選べ。
- 2026年度(令和8年度)公開問題 科目B 問2次のプログラム中の [ ] に入れる正しい答えを,解答群の中から選べ。
- 2026年度(令和8年度)公開問題 科目B 問3次のプログラム中の [ ] に入れる正しい答えを,解答群の中から選べ。
- 2026年度(令和8年度)公開問題 科目B 問4次のプログラム中の [a] と [b] に入れる正しい答えの組合せを,解答群の中から選べ
- 2026年度(令和8年度)公開問題 科目B 問5次のプログラム中の [a] と [b] に入れる正しい答えの組合せを,解答群の中から選べ
スポンサーリンク







