練習 [9] 関数②(2/5)

練習 2(提出プログラム名:p0902.c)

サンプルプログラム 2 (sample2.c)p0902.c という別の名前のファイルにコピーしなさい.そして,p0902.c を以下の指示に従って編集し,実行例のように実行できるプログラムを作りなさい.

【編集すべき内容: main 関数を書き換えなさい
サンプルプログラム 2 では main の中で if 文の条件部に is_prime(x) を使用して
x が素数かどうかを判定し,その結果に応じて printf を切り替えている.
そこで,main 関数の中で for 文で k = 2x と変化させながら整数 k の素数判定を is_prime(k) で行うように書き換えなさい.

【注意】
この問題では is_prime の内容を書き換えてはいけません

  • 【プログラムの実行例】(その1)赤字は実行時にキーボードから入力する内容
    ※正しく 2 〜 6 の範囲で判定が行われているか確認せよ
整数を入力してください:6
2 は素数です
3 は素数です
4 は素数ではありません
5 は素数です
6 は素数ではありません
  • 【プログラムの実行例】(その2)赤字は実行時にキーボードから入力する内容
    ※ 1 を入力した場合は for 文の繰り返し条件が成立しないので何も表示されないのが正解
整数を入力してください:1

 

【過去にあったミス(減点となり,やり直しを命じられる)】
2 種類の実行例を確認せずに提出してしまっている.
 (例1)「 は素数です」や「は素数ではありません」の部分がすべて同じ値に固定となっている.
 (例2)素数の判定結果が逆になっている.
問題文の注意書きを見落としていて,is_prime の内容を書き換えてしまっている.
インデントに不備がある(VSCode 上でインデントを自動で揃える作業をやっていない).


ミスが無いことを確認したら次の問題へ → [ 練習3 (p0903.c) ]