基本情報技術者試験令和5年B問1

素数判定アルゴリズム解説と問題

次のプログラム中のAとBに入れる正しい答えの組合せを,解答群の中から選べ。ここで,配列の要素番号は1から始まる。

関数 findPrimeNumbers は,引数で与えられた整数以下の,全ての素数だけを格納した配列を返す関数である。ここで,引数に与える整数は 2 以上である。

〔プログラム〕
○整数型の配列: findPrimeNumbers(整数型: maxNum)
整数型の配列: pnList ← {} // 要素数0の配列
整数型: i, j
論理型: divideFlag
for (i を 2 から a まで 1 ずつ増やす)
divideFlag ← true
/* iの正の平方根の整数部分が2未満のときは,繰返し処理を実行しない */
for (j を 2 から iの正の平方根の整数部分 まで 1 ずつ増やす) // α
if ( b )
divideFlag ← false
αの行から始まる繰返し処理を終了する
endif
endfor
if (divideFlag が true と等しい)
pnListの末尾 に iの値 を追加する
endif
endfor
return pnList
ab
maxNum i ÷ jの余りが0と等しい
maxNum i ÷ jの商 が1と等しくない
maxNum + 1i ÷ jの余りが0と等しい
maxNum + 1i ÷ jの商が1と等しくない
×不正解です
a
回答数 0
正解率 0%