ITパスポート試験 - 令和8年 - 問85
関数 isPrime は,引数として与えられた正の整数が,素数であれば true を,素数でなければ false を戻り値とする。例えば,関数 isPrime を isPrime(2)として呼び出したときの戻り値は true である。プログラム中の a,b に入れる字句の適切な組合せはどれか。
〔プログラム〕
〔プログラム〕
| a | b | |
| ア | 以下 | と等しい |
| イ | 以下 | より大きい |
| ウ | より小さい | と等しい |
| エ | より小さい | より大きい |
答え : エ
分野 : テクノロジ系 › 基礎理論 › アルゴリズムとプログラミング › アルゴリズムとプログラミング
解説 :
与えられた正の整数が素数かどうかを判定するプログラムの空欄を埋める問題です。答えは「エ」です。素数とは1とその数自身以外に約数を持たない,2以上の整数のことです。プログラムでは,まず2未満(1以下)の数は素数ではないと判定する必要があるため,aには「より小さい」が入ります。
そして,2以上の数について,2からその数自身の1つ手前までの数(divがnumより小さい間)で割り切れるかどうかを調べる必要があるため,bには「より小さい」が入ります。このように,判定すべき範囲を正しく設定することが素数判定のポイントで,選択肢「エ」の組合せが適切です。他の選択肢は「以下」や「と等しい」としており,判定範囲がずれてしまい正しく動作しないため誤りです。
分野 : テクノロジ系 › 基礎理論 › アルゴリズムとプログラミング › アルゴリズムとプログラミング
解説 :
与えられた正の整数が素数かどうかを判定するプログラムの空欄を埋める問題です。答えは「エ」です。素数とは1とその数自身以外に約数を持たない,2以上の整数のことです。プログラムでは,まず2未満(1以下)の数は素数ではないと判定する必要があるため,aには「より小さい」が入ります。
そして,2以上の数について,2からその数自身の1つ手前までの数(divがnumより小さい間)で割り切れるかどうかを調べる必要があるため,bには「より小さい」が入ります。このように,判定すべき範囲を正しく設定することが素数判定のポイントで,選択肢「エ」の組合せが適切です。他の選択肢は「以下」や「と等しい」としており,判定範囲がずれてしまい正しく動作しないため誤りです。