3.2 while文 -紫帽子のC++
例題
While文を使って1~10までの整数の和を求めるプログラムを作成してください。
while文の使い方
前回は例題についてfor文で作りましたが、今回はwhile文を作って繰り返し処理をしてみます。
while文は以下のように記述します。
while(条件式){ //内部処理 }
while文は以下のように条件式が成り立たなくなるまで処理を続けます。

実際のプログラムを用いた解説
ここで、1~10までの数字をfor文で表示するプログラムを考えます。
for文で変数iを1~10まで変化させて表示すればいいので、フローチャートを作成すると以下のようになります。

これをコードにすると次のようになります。
#include <iostream> int main() { int i = 1; while (i <= 10) { std::cout << i << std::endl; i = i + 1; } }
forとwhileの使い分け
for文は繰り返しの回数があらかじめ決まっているとき、そうでないときはwhileというのが主流です。
私はforが使いにくいときにwhileを使うといったようにしていますが、絶対的なルールはないはずなので、書きやすい方を採用すればよいと思います。
forを使うとき
- 配列(第4章で解説予定)を使うとき
- n回だけ処理するなど、繰り返し回数が固定のとき
- 数学の
の記号などのように、指定範囲の値を使った処理をしたいとき
whileを使うとき
- 繰り返しを回数ではなく、特定の条件を満たしたときに終了したいとき(例:〇〇時まで、HPが〇〇以下になるまで)
- 無限ループのときなど
例題の解答
ソースコード
解答例(タッチで開きます)
#include <iostream> int main() { // 合計を格納する変数 int sum = 0; int i = 1; while (i <= 10) { sum += i; i++; } // sumを表示 std::cout << "sum = " << sum << std::endl; }
実行結果
sum = 55
リンク
| ⇐Back(3.1 for文) | ホーム | ⇒Next(繰り返し処理の問題集(準備中)) |