この章では、同じ処理を繰り返すための for 文と
while
文について学びます。ループ処理を使うことで、同じ処理を何度も効率よく実行できます。C言語と書き方は変わりません。
C言語では、関数の先頭ですべての変数を宣言する というルールがありました。これは古いC言語仕様の制約です。
一方、C++では、必要になったタイミングで変数を宣言 することができます。これにより、
というメリットがあります。
#include <iostream>
using namespace std;
int main() {
cout << "繰り返す回数を入力:";
int times;
cin >> times;
for (int i = 1; i <= times; i++) {
cout << i << "回目の処理" << endl;
}
return 0;
}for 文の中で変数 i
を宣言しているのがポイントです。 これにより、i
はループの中だけで使われる変数として限定され、
他の部分に影響しません。
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 5; i++) {
cout << i << "回目の処理" << endl;
}
return 0;
}int i = 1i <= 5i++#include <iostream>
using namespace std;
int main() {
int count = 1;
while (count <= 5) {
cout << count << "回目の処理" << endl;
count++;
}
return 0;
}#include <iostream>
using namespace std;
int main() {
int count = 1;
do {
cout << count << "回目の処理" << endl;
count++;
} while (count <= 5);
return 0;
}do-while
は他のループと異なり、条件に関係なく必ず1回は実行されるという点が特徴です。1から5までの数字を表示するfor文の出力を考えてください。
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 5; i++) {
cout << i << endl;
}
return 0;
}1
2
3
4
5
1からnまでの合計を求めて表示するプログラムを書きなさい。
// 07_sum_1_to_n.cpp
#include <iostream>
using namespace std;
int main() {
int n, sum = 0;
cout << "nの値を入力してください:";
cin >> n;
for (int i = 1; i <= n; i++) {
sum += i;
}
cout << "合計: " << sum << endl;
return 0;
}for 文は「回数が決まっている」場合に便利while 文は「条件を満たす間」繰り返したい場合に便利do-while 文は「少なくとも1回実行したい」場合に便利