演習課題 [4] while 文(教科書では主に 4 章が対応)

以下の 9 問についてそれぞれプログラムを作成し,Moodle から提出せよ.
提出〆切は問 1-3 が本日(5/7)の 23:59 であり,問 4-9 は 5/11(月)23:59 である
(いずれもMoodle上で自動的に締め切られる).
問 4-9 を本日中に提出できた場合は加点の対象とする
(一部の問題だけ早期提出するということでもOK).

ただし,次の点にはくれぐれも注意せよ(0点またはやり直しとなる).
● プログラムが正しく(エラーにならずに)gcc でコンパイルできることを必ず確認せよ.
● プログラムがすべての実行例と全く同じ動きになることを確認してから提出せよ.
 この確認を怠った場合は総合評価を 0 点とすることがある.
無限ループになるプログラムは絶対に提出しないこと.
 1 つでも無限ループになる場合は総合評価を 0 点とする.
● 提出前には「インデント」のチェックVSCode 上でインデントを自動で揃える作業)を必ず行うこと.


【要注意】
例年,この第 4 回あたりからすぐに解ける人となかなか解けない人に分かれる傾向が見られます.
中間試験も近いので,理解が怪しい人は後回しにせず,積極的に教員やTAに相談してください.
人それぞれつまずくポイントが違うので早めに相談してもらう方がお互いに効率的です)

今回の課題からは while と if が混在するようになるため,インデントを適切に付けてプログラムを整理しながら書くことが極めて重要になります.「提出前にとりあえず揃えとけばいいだろうということでは全く意味がないです.VSCode では右クリックでメニューを選ぶだけ(あるいはショートカットキーを押すだけ)で一発でやってくれるので,プログラムを書きながらこの機能を使い倒してください.
「この重要性を理解できるかできないか」がプログラミングの上手な人になれるかどうかの重要な分岐点の 1 つになります.


本日(5/7)23:59までに提出】
  • 問 1 (18 の倍数を入力するまで終わらない)
  • 問 2 (区間 [22.5, 28.5) に含まれるか判定)
  • 問 3 (選挙の集計)

来週月曜(5/11)23:59までに提出】
本日中に早期提出すれば加点の対象
  • 問 4 (階乗を計算)
  • 問 5 (合計値を順々に表示)
  • 問 6 (約数の個数を調べる)
  • 問 7 (記号を出力)
  • 問 8 (最大公約数)
  • 問 9 (インデントの修正とプログラムの間違い探し)