問題
関数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
選択肢
- 1a:以下、b:と等しい
- 2a:以下、b:より大きい
- 3a:より小さい、b:と等しい
- 4a:より小さい、b:より大きい
正解
4. a:より小さい、b:より大きい
詳しい解説を見る解説を閉じる
解説
素数判定では、2より小さい数(1以下)は素数でないためfalseを返します。よってaは「より小さい」が適切です。bはwhileループの条件で、divがnumに達するまで割り算を試すため、numがdivより大きい間ループを継続します。これにより2からnum-1までの数で割り切れるか確認します。両条件が揃って素数判定が正しく機能します。(出典: 令和8年度分 ITパスポート試験 問85)
記憶定着問題
全200問を繰り返し学習