共通テスト 情報Ⅰ・4-7

配列と添字の一問一答

共通テスト「情報Ⅰ」の「アルゴリズムとプログラミング」から、配列と添字に関する4択問題を10問。「答えと解説を見る」を開くと、正解とその理由がその場で読めます。会員登録は不要です。

この分野の演習

全10問/解説付き・基本無料

アプリ形式で解く(全800問) アルゴリズムとプログラミングの要点解説を読む
問題

上から順に解いてみてください。答えは各問の下で確認できます。

問14-7・基礎

配列 Data = [5, 8, 2, 9, 4] がある。添字は 0 から始まる。Data[1] + Data[4] の値はどれか。

  • ①14
  • ②13
  • ③12
  • ④6
答えと解説を見る
正解 ③12
解説
正解は「12」。Data[1] は 8、Data[4] は 4 なので、8 + 4 = 12 です。

なぜ
添字(何番目かを表す番号)は 0 から数えます。先頭の 5 が Data[0]、次の 8 が Data[1]、最後の 4 が Data[4] です。

ひっかけ注意

・「14」…添字を 1 から数え、1番目の 5 と4番目の 9 を足した誤り。先頭の 5 は Data[0]。
・「13」…Data[0] と Data[1](5 と 8)を足している。Data[4] は最後の 4。
・「6」…Data[2] と Data[4](2 と 4)を足している。Data[1] は2つ目の 8。
問24-7・基礎

次のプログラムを実行したとき、kazu の値はどれか。
Kion = [12, 15, 11, 18, 20, 17]
kazu = 要素数(Kion)

  • ①5
  • ②20
  • ③7
  • ④6
答えと解説を見る
正解 ④6
解説
正解は「6」。要素数() は、配列に入っている値の個数を返す関数です。

なぜ
Kion には 12、15、11、18、20、17 の6つの値が入っています。要素数は中身の大きさではなく、個数を数えます。

ひっかけ注意

・「5」…最後の要素の添字。添字は 0 から始まるので、最後の添字は要素数 − 1 = 5。
・「20」…要素の中で一番大きい値。要素数は値の大きさではなく個数を返す。
・「7」…個数を1つ多く数えている。添字は 0〜5 の6つなので、要素数は最後の添字 5 に 1 を足した 6。
問34-7・基礎

配列 Data の先頭の要素を表すものはどれか。ただし、添字は 0 から始まるものとする。

  • ①Data[0]
  • ②Data[1]
  • ③Data[-1]
  • ④Data(0)
答えと解説を見る
正解 ①Data[0]
解説
正解は「Data[0]」。添字は 0 から始まるので、先頭は 0 番です。

なぜ
共通テスト用プログラム表記では、特に説明がない限り、配列の添字は 0 から数えます。要素が n 個ある配列なら、使える添字は 0 から n − 1 までです。

ひっかけ注意

・「Data[1]」…先頭から2つ目の要素。添字を 1 から数える場合と混同しやすい。
・「Data[-1]」…負の添字は表記の例示に無い。表記で使える添字は 0 から 要素数 − 1 まで。
・「Data(0)」…( ) は 要素数(Data) のような関数を呼び出すときの形。配列の要素は [ ] で指定する。
問44-7・基礎

次のプログラムを実行したとき、表示される値はどれか。
Data = [3, 6, 9]
Data[1] = Data[0] + Data[2]
表示する(Data[1])

  • ①9
  • ②12
  • ③15
  • ④6
答えと解説を見る
正解 ②12
解説
正解は「12」。Data[1] には、Data[0] の 3 と Data[2] の 9 の和が入ります。

なぜ
Data[1] = … と書くと、配列のうち添字 1 の要素だけが書き換わります。右辺は書き換える前に計算するので 3 + 9 = 12 です。元の 6 は 12 に上書きされます。

ひっかけ注意

・「9」…Data[2] の値そのもの。Data[1] には 3 + 9 の和が入る。
・「15」…6 + 9 の値。右辺の Data[0] を2つ目の 6 と読み違えている。Data[0] は先頭の 3。
・「6」…書き換える前の Data[1] の値。代入で 12 に上書きされる。
問54-7・標準

配列 Tokuten = [70, 85, 90, 60] の最後の要素 60 を表す式として正しいものはどれか。

  • ①Tokuten[要素数(Tokuten)]
  • ②Tokuten[要素数(Tokuten) + 1]
  • ③Tokuten[要素数(Tokuten) - 1]
  • ④Tokuten[要素数(Tokuten) - 4]
答えと解説を見る
正解 ③Tokuten[要素数(Tokuten) - 1]
解説
正解は「Tokuten[要素数(Tokuten) - 1]」。要素数は 4 なので、Tokuten[3] を表します。

なぜ
添字は 0 から始まるので、4個の要素の添字は 0、1、2、3 です。最後の添字は、要素数から 1 を引いた数になります。この書き方は、要素の数が変わっても最後の要素を指せます。

ひっかけ注意

・「Tokuten[要素数(Tokuten)]」…Tokuten[4] のことで、添字は 0〜3 しかないので存在しない要素。
・「Tokuten[要素数(Tokuten) + 1]」…Tokuten[5] のことで、これも範囲の外。
・「Tokuten[要素数(Tokuten) - 4]」…Tokuten[0] のことで、先頭の 70 を表す。
問64-7・標準

要素数が 5 の配列 A がある。添字は 0 から始まる。A の要素を指すのに使える添字の範囲として正しいものはどれか。

  • ①1 以上 5 以下
  • ②0 以上 5 以下
  • ③1 以上 4 以下
  • ④0 以上 4 以下
答えと解説を見る
正解 ④0 以上 4 以下
解説
正解は「0 以上 4 以下」。5個の要素には、0、1、2、3、4 の番号が付きます。

なぜ
添字が 0 から始まると、最後の添字は要素数 − 1 になります。この範囲の外の添字(5 など)を使うと、存在しない要素を読み書きしようとすることになります。これはよくある誤りの原因です。

ひっかけ注意

・「1 以上 5 以下」…添字を 1 から数えた場合の範囲。表記では特に説明がなければ 0 から。
・「0 以上 5 以下」…6個分の範囲。A[5] は存在せず、範囲外の添字になる。
・「1 以上 4 以下」…先頭の A[0] が抜けていて、4個分しか指せない。
問74-7・標準

次のプログラムは、得点が最も高い科目の名前を表示する。表示される内容はどれか。
Kamoku = ["国語", "数学", "英語", "情報"]
Tensu = [68, 82, 75, 82]
saidai = 0 , ichi = 0
i を 0 から 3 まで 1 ずつ増やしながら繰り返す:
| もし Tensu[i] > saidai ならば:
| | saidai = Tensu[i]
⎿ ⎿ ichi = i
表示する(Kamoku[ichi])

  • ①数学
  • ②情報
  • ③英語
  • ④国語
答えと解説を見る
正解 ①数学
解説
正解は「数学」。2つの配列は同じ添字どうしが対応していて、最高点 82 を最初に取った添字 1 が ichi に残ります。

手順
①i = 0:68 > 0 なので saidai は 68、ichi は 0。
②i = 1:82 > 68 なので saidai は 82、ichi は 1。
③i = 2:75 > 82 は偽なので変わらない。
④i = 3:82 > 82 は偽(等しいだけでは大きくない)なので変わらない。
⑤Kamoku[1] の 数学 を表示する。

ひっかけ注意

・「情報」…条件が >= なら、同点 82 の後ろの情報(添字 3)に書き換わる。この問題は > なので変わらない。
・「英語」…75 は最高点ではない。75 > 82 は偽で、saidai は 82 のまま。
・「国語」…ichi が最初の 0 のまま変わらないと考えた誤り。i = 1 で ichi は 1 に変わる。
問84-7・標準

次のプログラムを実行した後の配列 Data の中身はどれか。
Data = [1, 2, 3, 4]
i を 1 から 3 まで 1 ずつ増やしながら繰り返す:
⎿ Data[i] = Data[i - 1]

  • ①[1, 1, 2, 3]
  • ②[1, 1, 1, 1]
  • ③[2, 3, 4, 4]
  • ④[1, 2, 3, 4]
答えと解説を見る
正解 ②[1, 1, 1, 1]
解説
正解は「[1, 1, 1, 1]」。前から順に書き換えるので、書き換えた後の値が次の要素にも写されます。

手順
①i = 1:Data[1] に Data[0] の 1 が入り、[1, 1, 3, 4]。
②i = 2:Data[2] に、書き換え済みの Data[1] の 1 が入り、[1, 1, 1, 4]。
③i = 3:Data[3] に Data[2] の 1 が入り、[1, 1, 1, 1]。

ひっかけ注意

・「[1, 1, 2, 3]」…元の値のまま1つずつ後ろにずれると考えた誤り。そうするには i を 3 から 1 まで減らしながら、後ろから書き換える。
・「[2, 3, 4, 4]」…前にずらす Data[i - 1] = Data[i] を実行した場合の結果。
・「[1, 2, 3, 4]」…代入で配列が変わらないと考えた誤り。i = 1 の回で Data[1] はもう 1 になる。
問94-7・標準

次のプログラムを実行したとき、表示される値はどれか。添字は 0 から始まる。
Data = [10, 20, 30, 40, 50]
k = 7 % 5
表示する(Data[k + 1])

  • ①30
  • ②50
  • ③40
  • ④31
答えと解説を見る
正解 ③40
解説
正解は「40」。k は 7 を 5 で割った余りの 2 なので、Data[3] を表示します。

手順
①7 % 5 は、7 = 5 × 1 + 2 より 2。
②k + 1 = 3 なので、Data[3] を読む。
③添字 0 から数えて4つ目の 40 を表示する。

ひっかけ注意

・「30」…Data[3] を、1 から数えた3つ目と考えた誤り。30 は Data[2]。
・「50」…Data[4] の値。k を 3 と計算している(7 % 5 は 2)。
・「31」…Data[k] + 1 と読み、Data[2] の 30 に 1 を足している。
問104-7・標準

次のプログラムを実行したとき、表示される値はどれか。
A = [2, 4, 6]
B = [0, 0, 0]
i を 0 から 2 まで 1 ずつ増やしながら繰り返す:
⎿ B[2 - i] = A[i]
表示する(B[0])

  • ①2
  • ②4
  • ③0
  • ④6
答えと解説を見る
正解 ④6
解説
正解は「6」。A を逆の順番で B に写すので、B[0] には A の最後の 6 が入ります。

手順
①i = 0:B[2] に A[0] の 2 が入る。
②i = 1:B[1] に A[1] の 4 が入る。
③i = 2:B[0] に A[2] の 6 が入る。
④B は [6, 4, 2] となり、B[0] は 6。

ひっかけ注意

・「2」…B[2 - i] を B[i] と読み、そのまま写したと考えた誤り。2 は B[2] に入る。
・「4」…真ん中の要素で、B[1] の値。i = 1 のとき 2 − 1 = 1 番に入る。
・「0」…B が書き換わらないと考えた誤り。3回とも B のどこかに代入している。

当サイトは、独立行政法人 大学入試センターとは一切関係のない、非公式の学習サイトです。試験に関する最新情報は、大学入試センターの公式サイトでご確認ください。

共通テスト 情報Ⅰ 基礎完全対策(全800問)に戻る

※本ページでは、アクセス解析(Googleアナリティクス)と、広告の配信・成果の計測(A8.net)のためにCookie等を利用し、閲覧に関する情報をGoogle LLC・株式会社ファンコミュニケーションズへ送信しています。詳しくはプライバシーポリシーをご覧ください。

※本ページの問題・解説は、生成AI(人工知能)を活用して作成しています。

【PR】