関数 isPrime は,引数として与えられた正の整数が,素数であれば true を,素数でなければ false を戻り…
テクノロジ系 問85
関数 isPrime は,引数として与えられた正の整数が,素数であれば true を,素数でなければ false を戻り値とする。例えば,関数 isPrime を isPrime(2)として呼び出したときの戻り値は true である。プログラム中の a,b に入れる字句の適切な組合せはどれか。
- アa: 以下 b: と等しい
- イa: 以下 b: より大きい
- ウa: より小さい b: と等しい
- エa: より小さい b: より大きい
正答 エ
正答は エ。a は「より小さい」、b は「より大きい」です。
素数は、1 とその数自身以外に約数をもたない 2 以上の整数です。
【a を考える】
1 は素数ではないので、2 より小さい数は false を返す必要があります。「num が 2 より小さい」なら return false です。
「以下」にすると、isPrime(2) が false になり、問題文の「isPrime(2) の戻り値は true」と合いません。
【b を考える】
div を 2 から 1 ずつ増やし、num が割り切れたら素数ではないのでfalse を返します。div が num に達するまで調べればよいので、繰返しの条件は「num が div より大きい」間です。
解説の続きをみる続きを閉じる
【トレースで確かめる】(エの場合)
num=2 2<2 は偽 → while:2>2 は偽 → return true
num=3 while:3>2 は真、3÷2 の余り 1 → div=3
3>3 は偽 → return true
num=4 while:4>2 は真、4÷2 の余り 0 → return false
num=1 1<2 は真 → return false
【ほかの選択肢】
ア a: 以下 b: と等しい 誤り
イ a: 以下 b: より大きい 誤り
→ a が「以下」だと、isPrime(2) が false になる
ウ a: より小さい b: と等しい 誤り
→ num=4 のとき「4 が 2 と等しい」は偽なので、繰返しを
一度も行わずに true を返してしまう
出典:令和8年度 ITパスポート試験 公開問題 問85(独立行政法人情報処理推進機構)出典元ページ
最終更新日
「テクノロジ系」のほかの問題
- 2025年度(令和7年度)公開問題 問95データベース設計におけるデータ分析で行うこととして,適切なものはどれか。
- 2024年度(令和6年度)公開問題 問65AI における機械学習の学習方法に関する次の記述中の a~c に入れる字句の適切な組合せ
- 2024年度(令和6年度)公開問題 問80OSS (Open Source Software) に関する記述として,適切なものだけ
- 2024年度(令和6年度)公開問題 問95AI の関連技術であるディープラーニングに用いられる技術として,最も適切なものはどれか。
- 2025年度(令和7年度)公開問題 問65DBMS において,データの検索を高速に行う目的で,必要に応じて設定して利用する情報はど
- 2025年度(令和7年度)公開問題 問80AI において,広範囲かつ大量のデータで訓練されたものであり,ファインチューニングなどに
スポンサーリンク




