C++ forループ
C++ forループ
あるコードブロックを何回ループさせたいかがはっきり分かっている場合は、while
ループの代わりにfor
ループを使います。
構文
for (<i>statement 1</i>;<i> statement 2</i>;<i> statement 3</i>) {
<i>// code block to be executed</i>
}
ステートメント1 コードブロックの実行前に(1回)実行されます。
ステートメント2 コードブロックを実行するための条件を定義します。
ステートメント3 コードブロックが実行された後に(毎回)実行されます。
以下の例では、0から4までの数字を出力します。
例の説明
ステートメント1は、ループの開始前に変数を設定します (int i = 0)。
ステートメント2は、ループが実行される条件を定義します (iは5未満でなければなりません)。条件が trueの場合はループが最初からやり直し、falseの場合はループが終了します。
ステートメント3は、ループ内のコードブロックが実行されるたびに値 (i++)を増やします。
もう一つの例
この例では、0から10までの偶数値のみを出力します。
ネストされたループ
ループを別のループ内に配置することも出来ます。これはネストされたループと呼ばれます。
「内側のループ」は、「外側のループ」の反復ごとに1回実行されます。
例
// Outer loop
for (int i = 1; i <= 2; ++i) {
cout << "Outer: " << i << "\n"; // Executes 2 times
// Inner loop
for (int j = 1; j <= 3; ++j) {
cout << " Inner: " << j << "\n"; // Executes 6 times (2 * 3)
}
}
foreach ループ
また、「for-eachループ」(C++バージョン11(2011)で導入)もあり、これは配列(またはその他のデータセット)内の要素をループ処理するためだけに使用されます。構文
for (<em>type variableName </em>: <em>arrayName</em>) {
// code block to be executed
}
次の例では、"for-eachループ"を使用して、配列内のすべての要素を出力します。
注:上記の例が理解できなくても大丈夫、配列の詳細については、C++ 配列を参照して下さい。
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。