C++のループ構造は、特定の条件が満たされるまでコードを繰り返し実行するための構文です。ループを使用することで、同じ処理を効率的に行うことができます。C++でよく使用されるループには、for
ループ、while
ループ、およびdo-while
ループがあります。
1. for
ループ
for
ループは、特定の回数だけループを実行する場合に使用されます。ループの開始、終了、および増分を明示的に指定できます。
構文
for (初期化; 条件; 更新) {
// 条件が真の間、繰り返し実行されるコード
}
例
#include <iostream>
using namespace std;
int main() {
// 1から10までの数値を出力
for (int i = 1; i <= 10; ++i) {
cout << i << " ";
}
cout << endl;
return 0;
}
2. while
ループ
while
ループは、条件が真である限り、コードブロックを繰り返し実行します。条件が初めて偽になると、ループを終了します。
構文
while (条件) {
// 条件が真の間、繰り返し実行されるコード
}
例
#include <iostream>
using namespace std;
int main() {
int count = 1;
// countが10以下の間、ループを実行
while (count <= 10) {
cout << count << " ";
++count;
}
cout << endl;
return 0;
}
3. do-while
ループ
do-while
ループは、少なくとも一度はコードブロックを実行し、その後条件を評価して、条件が真である限りループを繰り返します。
構文
do {
// 条件が真の間、繰り返し実行されるコード
} while (条件);
例
#include <iostream>
using namespace std;
int main() {
int count = 1;
// 少なくとも一度はループを実行
do {
cout << count << " ";
++count;
} while (count <= 10);
cout << endl;
return 0;
}
ループ制御構造
ループの制御には、break
とcontinue
を使用します。
break
文
break
文は、ループを途中で終了させるために使用します。
例
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 10; ++i) {
if (i == 5) {
break; // ループを終了
}
cout << i << " ";
}
cout << endl;
return 0;
}
continue
文
continue
文は、ループの現在の反復をスキップし、次の反復に進むために使用します。
例
#include <iostream>
using namespace std;
int main() {
for (int i = 1; i <= 10; ++i) {
if (i == 5) {
continue; // 5をスキップ
}
cout << i << " ";
}
cout << endl;
return 0;
}
ループのネスト
ループは他のループの中にネストすることができます。これにより、多次元のデータ構造を処理したり、複雑な反復処理を行うことができます。
例
#include <iostream>
using namespace std;
int main() {
// 2次元配列の要素を出力
for (int i = 1; i <= 3; ++i) {
for (int j = 1; j <= 3; ++j) {
cout << i << "," << j << " ";
}
cout << endl;
}
return 0;
}
まとめ
C++のループ構造を使用することで、特定の条件に基づいてコードを繰り返し実行することができます。for
ループ、while
ループ、およびdo-while
ループを適切に使用することで、効率的な反復処理が可能になります。また、break
やcontinue
を使用して、ループの制御を柔軟に行うことができます。