共通テスト(情報) 過去問
令和6年度(2024年度)本試験
問37 (<旧課程>情報関係基礎(第3問) 問2)
問題文
魔方陣とは、1から順に重複しない自然数を、各列、各行、各対角線の和が等しくなるように正方形状に並べたものである。列数と行数がいずれもNである魔方陣を「N次の魔方陣」と呼ぶ。図1は「3次の魔方陣」の例である。
与えられた数の並びが魔方陣かどうかを検証する準備として、各列や各行、各対角線の和を求め、表示する手続きを作成する。数の並びは、一番左の列を第0列、一番上の行を第0行として、第x列第y行の値が2次元配列Mahou[x,y]の要素に格納された形で与えられる。N次の魔方陣では、配列の添字の範囲は0からN−1までとなる。図1の場合、1が記入されているマスは第1列第2行なので、Mahou[1,2]と表せる。
第0行の和を求めるには、Mahou[0,0]、Mahou[1,0]、Mahou[2,0]を足し合わせる。同様に、第1行の和を求めるには、Mahou[( ア ),1]、Mahou[1,( イ )]、Mahou[2,( イ )]を足し合わせる。各行の和を求めて表示する手続きが図2である。変数Nには魔方陣の次数を格納する。各行の和は変数waを使用して計算され、行ごとに表示される。
図2 配列Mahouの各行の和を求めて表示する手続き
(01)N←3
(02)gyouを0からN−1まで1ずつ増やしながら,
(03)│ wa←0
(04)│ retuを0からN−1まで1ずつ増やしながら,
(05)│ │ wa←wa+( ウ )
(06)│ を繰り返す
(07)│ waを表示する
(08)を繰り返す
また、各列の和を計算するには、図2の手続きのうち(02)行目と(04)行目の変数gyouと変数retuを入れ替える。
このページは閲覧用ページです。
履歴を残すには、 「新しく出題する(ここをクリック)」 をご利用ください。
問題
共通テスト(情報)試験 令和6年度(2024年度)本試験 問37(<旧課程>情報関係基礎(第3問) 問2) (訂正依頼・報告はこちら)
魔方陣とは、1から順に重複しない自然数を、各列、各行、各対角線の和が等しくなるように正方形状に並べたものである。列数と行数がいずれもNである魔方陣を「N次の魔方陣」と呼ぶ。図1は「3次の魔方陣」の例である。
与えられた数の並びが魔方陣かどうかを検証する準備として、各列や各行、各対角線の和を求め、表示する手続きを作成する。数の並びは、一番左の列を第0列、一番上の行を第0行として、第x列第y行の値が2次元配列Mahou[x,y]の要素に格納された形で与えられる。N次の魔方陣では、配列の添字の範囲は0からN−1までとなる。図1の場合、1が記入されているマスは第1列第2行なので、Mahou[1,2]と表せる。
第0行の和を求めるには、Mahou[0,0]、Mahou[1,0]、Mahou[2,0]を足し合わせる。同様に、第1行の和を求めるには、Mahou[( ア ),1]、Mahou[1,( イ )]、Mahou[2,( イ )]を足し合わせる。各行の和を求めて表示する手続きが図2である。変数Nには魔方陣の次数を格納する。各行の和は変数waを使用して計算され、行ごとに表示される。
図2 配列Mahouの各行の和を求めて表示する手続き
(01)N←3
(02)gyouを0からN−1まで1ずつ増やしながら,
(03)│ wa←0
(04)│ retuを0からN−1まで1ずつ増やしながら,
(05)│ │ wa←wa+( ウ )
(06)│ を繰り返す
(07)│ waを表示する
(08)を繰り返す
また、各列の和を計算するには、図2の手続きのうち(02)行目と(04)行目の変数gyouと変数retuを入れ替える。
- 0
- 1
- 2
- 3
正解!素晴らしいです
残念...
この過去問の解説 (3件)
01
図1より、3と5と7を足し合わせれば良いことが分かります。
✕
Mahou[1,0]=9です。
Mahou[2,0]=2です。
○
Mahou[1,1]=5です。
Mahou[2,1]=7です。
✕
Mahou[1,2]=1です。
Mahou[2,2]=6です。
✕
Mahou[1,3]はありません。
Mahou[2,3]はありません。
参考になった数0
この解説の修正を提案する
02
この問題は、第1行の和を求める式「Mahou[1,(イ)]」「Mahou[2,(イ)]」の空欄(イ)を考えます。配列Mahou[列,行]において行の添字は第2引数です。求めているのは「第1行」の和なので、行の添字は1が入ります。Mahou[1,1]は第1列第1行、Mahou[2,1]は第2列第1行をそれぞれ表しており、正しい参照です。
(イ)に0を入れるとMahou[1,0]とMahou[2,0]となり、これらは「第0行」のセルになります。求めているのは第1行の和なので、行の添字は0ではなく1でなければなりません。正しくありません。
(イ)に1を入れるとMahou[1,1](第1列第1行)とMahou[2,1](第2列第1行)となります。これは第1行の2番目・3番目のセルを正しく参照しています。正解の選択肢です。
(イ)に2を入れるとMahou[1,2]とMahou[2,2]となり、これらは「第2行」のセルです。求めているのは第1行の和なので、行の添字は2ではなく1でなければなりません。正しくありません。
(イ)に3を入れるとMahou[1,3]とMahou[2,3]となりますが、3次魔方陣の添字の範囲は0〜2です。添字3は範囲外であり、存在しないセルへの参照となります。正しくありません。
Mahou[列,行]という配列の添字の順序と、0から始まる(0-indexed)添字の仕組みを正確に把握することが重要です。「第1行」は行の添字1に対応します。Mahou[0,1]・Mahou[1,1]・Mahou[2,1]の3つが第1行を構成する全要素です。
参考になった数0
この解説の修正を提案する
03
正解は「1」です。
問題文に「数の並びは、一番左の列を第0列、一番上の行を第0行として、第x列第y行の値が2次元配列Mahou[x,y]の要素に格納された形で与えられる。」と記載があります。
2次元配列Mahou[x,y]のx部分が列、y部分が行となる。第0行の和を求めるには、Mahou[0,0]、Mahou[1,0]、Mahou[2,0]を足し合わせる。同様に、第1行の和を求めるには、Mahou[( ア ),1]、Mahou[1,( イ )]、Mahou[2,( イ )]を足し合わせる。
第0行の和を求める際に列の部分は0と固定になっているので、第1行に当てはめると、( イ )は1になります。
参考になった数0
この解説の修正を提案する
前の問題(問36)へ
令和6年度(2024年度)本試験 問題一覧
次の問題(問38)へ