令和8年度 ITパスポート 問85 解説
関数isPrimeは,引数として与えられた正の整数が,素数であればtrueを,素数でなければfalseを戻り値とする。例えば,関数isPrimeをisPrime(2)として呼び出したときの戻り値はtrueである。プログラム中のa,bに入れる字句の適切な組合せはどれか。

- アa:以下 b:と等しい
- イa:以下 b:より大きい
- ウa:より小さい b:と等しい
- エa:より小さい b:より大きい
答えを見る
正解 エa:より小さい b:より大きい
要点素数判定は2未満を除外し、num未満の数で割り切れるか調べる
解説
素数は2以上で、1と自分自身以外に約数をもたない数です。
- a:2未満(1)は素数ではないので、「numが2より小さい」ならfalseを返します。
- b:2からnum-1までの数divで割り切れるかを調べるので、「numがdivより大きい」間、繰り返します。
確認:isPrime(2) はaに該当せず、2>2が成り立たないのでループせずtrue。isPrime(4) は div=2 で 4÷2 の余り0なのでfalse。よってエが正解です。
- a「以下」ではnum=2でfalseになり、isPrime(2)がtrueにならないのでア・イは誤り。
- b「と等しい」では、num=4のとき一度もループせずtrueとなってしまうので、ウは誤り。