ITパスポート試験 過去問解説

配列とは?ITパスポート試験 2024年 (令和6年) 問62を解説

ITパスポート試験 2024年 (令和6年) 問62は、配列に関する理解を問う問題です。検索から入っても、問題文、選択肢、正解、解説、各選択肢がなぜ違うかをこのページだけで確認できます。

問題文

関数convertは,整数型の配列を一定のルールで文字列に変換するプログラムである。関数convertをconvert(arrayInput)として呼び出したときの戻り値が"AABAB"になる引数arrayInputの値はどれか。ここで,arrayInputの要素数は1以上とし,配列の要素番号は1から始まる。 [プログラム] ○文字列型: convert(整数型の配列: arrayInput) 文字列型: stringOutput ← "" // 空文字列を格納 整数型: i for (i を 1 から arrayInputの要素数 まで 1 ずつ増やす) if (arrayInput[i] が 1 と等しい) stringOutputの末尾に "A" を追加する else stringOutputの末尾に "B" を追加する endif endfor return stringOutput

この問題の出題ポイント

  • 配列の定義だけでなく、問題文中の条件がどの選択肢に当てはまるかを確認する。
  • テクノロジ系分野では、用語の目的・主体・責任範囲の違いが選択肢で問われやすい。
  • 関連タグ: アルゴリズムとプログラミング、配列、繰り返し、条件分岐。

選択肢

  1. ア{0, 0, 1, 2, 1}
  2. イ{0, 1, 2, 1, 1}
  3. ウ{1, 0, 1, 2, 0}
  4. エ{1, 1, 2, 1, 0}正解

正解

エ: {1, 1, 2, 1, 0}

解説

関数convertは、配列の要素を先頭から順に調べ、1と等しければ「A」、そうでなければ「B」を文字列の末尾に追加する。戻り値が「AABAB」になるには、先頭から順に、1、1、1以外、1、1以外の並びでなければならない。これに合うのは{1, 1, 2, 1, 0}である。

なぜ他の選択肢が違うのか

  • ア

    {0, 0, 1, 2, 1}は、先頭の要素が1ではないので先頭が「B」になり、戻り値は「BBABA」となる。

  • イ

    {0, 1, 2, 1, 1}は、先頭が1ではないので「B」から始まり、戻り値は「BABAA」となる。

  • ウ

    {1, 0, 1, 2, 0}は、2番目の要素が1ではないので「B」になり、戻り値は「ABABB」となる。

  • エ(正解)

    正しい。{1, 1, 2, 1, 0}は、A、A、B、A、Bの順に追加され、戻り値は「AABAB」と一致する。

解き方の整理

配列の問題では、選択肢のキーワードだけで判断せず、問題文が示す条件と正解選択肢の説明が一致しているかを見ます。誤答選択肢は、似た用語を混ぜる、主体を入れ替える、目的や範囲を広げすぎる、という形で作られることが多いため、選択肢別解説まで確認しておくと復習効率が上がります。

関連問題

前後の問題

2024年 (令和6年) の関連する問題

復習を続ける

間違えた問題、苦手タグ、模試履歴を保存して復習する導線を用意しています。広告なしPro、弱点分析、復習リマインダーは段階的に提供予定です。