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

引数とは?ITパスポート試験 2026年 (令和8年) 問85を解説

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

問題文

関数 isPrime は,引数として与えられた正の整数が,素数であれば true を,素数でなければ false を戻り値とする。例えば,関数 isPrime を isPrime(2)として呼び出したときの戻り値は true である。プログラム中の a,b に入れる字句の適切な組合せはどれか。 〔プログラム〕 ○論理型: isPrime(整数型: num) 整数型: div ← 2 if (num が 2 [a] ) return false else while (num が div [b] ) if (num ÷ div の余り が 0 と等しい) return false else div ← div + 1 endif endwhile return true endif

この問題の出題ポイント

  • 引数の定義だけでなく、問題文中の条件がどの選択肢に当てはまるかを確認する。
  • テクノロジ系分野では、用語の目的・主体・責任範囲の違いが選択肢で問われやすい。
  • 関連タグ: 擬似言語、プログラミング。

選択肢

  1. アa:以下 b:と等しい
  2. イa:以下 b:より大きい
  3. ウa:より小さい b:と等しい
  4. エa:より小さい b:より大きい正解

正解

エ: a:より小さい b:より大きい

解説

素数は 1 と自分自身以外に約数をもたない 2 以上の整数なので、1 は false にする。そこで a には「2 より小さい」が入る。b は、div を 2 から 1 ずつ増やして num を割っていく間の継続条件で、「num が div より大きい」の間だけ繰り返し、割り切れれば false、最後まで割り切れなければ true を返す。num が 2 のときは「num が div より大きい」が成り立たずループに入らないので true になり、例と一致する。

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

  • ア

    a を「2 以下」にすると num が 2 のときに false を返し、例の isPrime(2) が true になることに反する。b を「div と等しい」にすると、num が 4 のときなどループに入らず true を返す。

  • イ

    b は合っているが、a を「2 以下」にすると num が 2 のときに false となる。2 は素数なので true を返さなければならず、判定を誤る。

  • ウ

    a は合っているが、b を「div と等しい」にすると、num が 2 以外のときはループに入らずに true を返す。4 や 9 のような素数でない数を、素数と誤判定する。

  • エ(正解)

    正しい。1 は素数でないので 2 より小さい数は false とし、それ以外は div が num に達するまで割り切れるかを調べる。2 は true、9 は div が 3 のときに割り切れて false となり、正しく判定できる。

解き方の整理

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

関連問題

前後の問題

2026年 (令和8年) の関連する問題

復習を続ける

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