技術士の過去問
平成29年度(2017年)
基礎科目「情報・論理に関するもの」 問9
このページは閲覧用ページです。
履歴を残すには、 「新しく出題する(ここをクリック)」 をご利用ください。
問題
技術士 第一次試験 平成29年度(2017年) 基礎科目「情報・論理に関するもの」 問9 (訂正依頼・報告はこちら)
2以上の自然数で1とそれ自身以外に約数を持たない数を素数と呼ぶ。Nを4以上の自然数とする。2以上√N以下の全ての自然数でNが割り切れないとき、Nは素数であり、そうでないとき、Nは素数でない。
例えば、N=11の場合、11÷2=5余り1、11÷3=3余り2となり、
2以上√11≒3.317以下の全ての自然数で割り切れないので11は素数である。
このアルゴリズムを次のような流れ図で表した。流れ図中の( ア )、( イ )に入る記述として、最も適切なものはどれか。
例えば、N=11の場合、11÷2=5余り1、11÷3=3余り2となり、
2以上√11≒3.317以下の全ての自然数で割り切れないので11は素数である。
このアルゴリズムを次のような流れ図で表した。流れ図中の( ア )、( イ )に入る記述として、最も適切なものはどれか。
- ア:I≧√N イ:IがNで割り切れる。
- ア:I≧√N イ:NがIで割り切れない。
- ア:I≧√N イ:NがIで割り切れる。
- ア:I≦√N イ:NがIで割り切れない。
- ア:I≦√N イ:NがIで割り切れる。
正解!素晴らしいです
残念...
この過去問の解説 (3件)
01
(ア)は、正の時ループに入り、偽のときに「素数である」と判定しループを終了する条件になります。
ループ条件は「I が 2 以上 √N 以下のとき」であり、そうでない場合はループを終了しますので、
(ア)には I ≦ √N が入ります。
(イ)は真のとき「素数ではない」と判定されることから、
「N が I で割り切れる」が入ります。
よって、ア:I ≦ √N、イ:N が I で割り切れる
となることから、5が正解です。
参考になった数13
この解説の修正を提案する
02
素数判定プログラムのフローチャートについての問題です。
アは偽のとき、素数であると判定しています。
素数であると判定出来るのは、
2以上√N以下の全ての自然数でNが割り切れないことを試行した後なので、
ループ脱出の条件が入ります。
したがて、アはI≦√Nです。
イは真のとき、素数でないと判定しています。
したがって、イにはNがIで割り切れる。 が該当します。
以上から、ア:I≦√N イ:NがIで割り切れる。 となるので、
5が正解です。
参考になった数3
この解説の修正を提案する
03
<正解>5
[解説]
素数判定のアルゴリズムの問題です。
問題文より、
2以上√N以下の全ての自然数でNが割り切れるか、割り切れないかによって、
「素数である」か「素数でない」かの判定を行うことになるため、
(ア)には、この条件が入ることになります。
よって、
(ア)は、「I≦√N」となります。
また、(イ)の条件を満たした場合には、
「素数でない」と表示されることになるため、
「NがIで割り切れる」かどうかの判定を行っていることが分かります。
よって、
(イ)は、「NがIで割り切れる」となります。
これらのことから、
「5」が正解となります。
参考になった数1
この解説の修正を提案する
前の問題(問8)へ
平成29年度(2017年)問題一覧
次の問題(問10)へ