課題 [5] for 文(9/9)

問 9(提出プログラム名:ex0509.c)

まず,このプログラム(ex0509.c)をダウンロード(右クリックして保存)しなさい.
そして,次の①と②を行いなさい.
①このプログラムにはインデントが全く付けられておらず,不適切な書き方になっている.
 VSCode の自動インデント(フォーマット)機能を使ってインデントを適切に修正しなさい.
②このプログラムでは整数 n(ただし,n は 1 以上とする)を読み込んで,
 1 以上の n 以下の各整数について,約数のみを出力(約数以外は * 印で表示)させようと
 したのですがうまくいきませんでした.
 誤りを見つけて修正し,提出しなさい.(誤りは複数箇所にあります

【注意】いったんインデントを揃えてみると,誤りの 1 つは比較的簡単に見つかるが,それに安心してしまい return 0; のインデントが不適切なまま提出してしまうことのないよう注意せよ
(過去には,これに該当してやり直しとなった人が多くいました)

【ヒント】
最初にプログラム全体を自動インデント機能で揃えてみれば,誤りの 1 つを比較的簡単に見つけ出せると思います.
(これは常にインデントを整理しながら書くことのメリットの1つです.)

なお,プログラムを修正後にもインデントチェックを忘れないようにしてください.最初に1回やっただけで安心しないでください.書いている途中でズレてしまっていることもあります.

  • 【目標としていたプログラムの実行結果】(その1)※赤字は実行時にキーボードから入力する内容
整数を入力してください:3
 1:  1
 2:  1  2
 3:  1  *  3
  • 【目標としていたプログラムの実行結果】(その2)※赤字は実行時にキーボードから入力する内容
    ※数字がその左の * とくっついてしまっていないか注意せよ.
整数を入力してください:15
 1:  1
 2:  1  2
 3:  1  *  3
 4:  1  2  *  4
 5:  1  *  *  *  5
 6:  1  2  3  *  *  6
 7:  1  *  *  *  *  *  7
 8:  1  2  *  4  *  *  *  8
 9:  1  *  3  *  *  *  *  *  9
10:  1  2  *  *  5  *  *  *  * 10
11:  1  *  *  *  *  *  *  *  *  * 11
12:  1  2  3  4  *  6  *  *  *  *  * 12
13:  1  *  *  *  *  *  *  *  *  *  *  * 13
14:  1  2  *  *  *  *  7  *  *  *  *  *  * 14
15:  1  *  3  *  5  *  *  *  *  *  *  *  *  * 15

【過去にあったミス(実際に減点となり,やり直しを命じられた例)】
■ 上の実行例と出力が違っていることを見落としている.
インデントに不備がある(VSCode 上でインデントを自動で揃える作業をやっていない).
 特に,最初に1回チェックしたことで安心してしまい,最後にやり忘れている
 (これを忘れると最後の return 0; だけインデントがおかしいまま提出することになる)


問 4 ~問 9 は 5/14(火)12:00 までに提出を済ませてください.※23:59 ではないので注意!
(ex0504.c ~ ex0509.c を Moodle から提出してください.)
くれぐれも各問題で記載されている注意事項や「過去にあったミス」を見落とさないようにしてください.
なお,提出後に間違いに気付いた場合,〆切前であれば差し替え(上書き)は可能です.