練習 5(提出プログラム名:p0505.c)※必須ではない
この練習問題は必須ではない(提出しなくてもよい)が適切に解けていれば加点の対象とする.
サンプルプログラム 5 (sample5.c) を p0505.c という別の名前のファイルにコピーしなさい.そして,p0505.c を編集して以下の例のように実行できるプログラムを作りなさい.
ただし,この問題では必ず for 文を使うこと.また,if 文も使ってよいが 2 回までとする.
このプログラムではサンプルプログラム 4 と同様に最大約数を表示するが,
(練習 4 と同様に)対象となる数が素数の場合は特別に「### 素数」という表示も追加している.
さらに,見つかった素数の個数も最後に出力するようになっている.
なお,n は 2 以上であると仮定してプログラムを作ってよい.
【ヒント】
「整数 i が素数である」⇔「整数 i の(i 未満の)最大約数が 1 である」
- 【プログラムの実行例】(その1)※赤字は実行時にキーボードから入力する内容
n を入力してください:2 2 の最大約数 = 1 ### 素数⏎ 全部で 1 個の素数が見つかりました⏎
- 【プログラムの実行例】(その2)※赤字は実行時にキーボードから入力する内容
n を入力してください:8 2 の最大約数 = 1 ### 素数⏎ 3 の最大約数 = 1 ### 素数⏎ 4 の最大約数 = 2⏎ 5 の最大約数 = 1 ### 素数⏎ 6 の最大約数 = 3⏎ 7 の最大約数 = 1 ### 素数⏎ 8 の最大約数 = 4⏎ 全部で 4 個の素数が見つかりました⏎
- 【プログラムの実行例】(その3)※赤字は実行時にキーボードから入力する内容
n を入力してください:1230 2 の最大約数 = 1 ### 素数⏎ 3 の最大約数 = 1 ### 素数⏎ 4 の最大約数 = 2⏎ 5 の最大約数 = 1 ### 素数⏎ ... (中略) ... 1227 の最大約数 = 409⏎ 1228 の最大約数 = 614⏎ 1229 の最大約数 = 1 ### 素数⏎ 1230 の最大約数 = 615⏎ 全部で 201 個の素数が見つかりました⏎
【過去にあったミス(実際に減点となり,やり直しを命じられた例)】
■ 上に示した3通りの実行例と出力結果が違っている.
特に,出力すべき値が間違っていて,最後に出力される個数が違っている.
■ インデントに不備がある(VSCode 上でインデントを自動で揃える作業をやっていない).
第5回(Cプログラミング;3 限目の方)の練習問題は以上の5問です.
p0501.c ~ p0505.c を Moodle から提出してください.※ただし,p0505.c は必須ではないです.
くれぐれも各問題で記載されている注意事項や「過去にあったミス」を見落とさないようにしてください.特に毎回のように指摘を受けている人はよりいっそう慎重に確認してください.
なお,コンパイルエラーや無限ループになるプログラムを 1 個でも提出した場合は総合評価を 0 点とするので十分に注意すること.
なお,提出後に間違いに気付いた場合,〆切前であれば差し替え(上書き)は可能です.
【要注意】
前回同様,インデントの不備を指摘されることのないようくれぐれも注意してください.
自分は大丈夫だと過信せず,VSCode 上でインデントを自動で揃える作業を確実に行ってから提出してください.