C++ループの種類

こんにちは、未来のプログラマーたち!今日は、C++のループの世界に興味深い旅に出かけましょう。あなたの近所の親切なコンピュータサイエンスの先生として、私はこの基本概念をガイドして、あなたのプログラミングツールキットの必需品となるようサポートします。

C++ Loop Types

ループの紹介

想像してみてください、「I love C++」を100回書かなくてはならないというタスク。退屈ですよね?ここでループが救助に駆けつけます!ループを使うことで、同じブロックのコードを繰り返し実行することができ、時間を節約し、プログラムをより効率的にすることができます。

C++には、主に3つのループの種類があります:

  1. Forループ
  2. Whileループ
  3. Do-Whileループ

これらのループの種類をそれぞれ見ていきましょう!

Forループ

Forループは、C++で最もよく使われるループです。何回繰り返すかが正確に分っている場合に最適です。

シntax

for (初期化; 条件; 更新) {
// 繰り返すコード
}

#include <iostream>
using namespace std;

int main() {
for (int i = 1; i <= 5; i++) {
cout << "I love C++ " << i << " times!" << endl;
}
return 0;
}

この例では、「I love C++」を5回印刷しています。以下に分解します:

  1. int i = 1: コウント変数iを1に初期化します。
  2. i <= 5: これは条件です。iが5以下の間、ループは続きます。
  3. i++: 各反復の後でiを1増やします。

出力は以下のようになります:

I love C++ 1 times!
I love C++ 2 times!
I love C++ 3 times!
I love C++ 4 times!
I love C++ 5 times!

Whileループ

Whileループは、特定の条件が真の間、コードブロックを繰り返したい場合に使いますが、正確な反復回数は知らない場合に使います。

シntax

while (条件) {
// 繰り返すコード
}

#include <iostream>
using namespace std;

int main() {
int count = 1;
while (count <= 5) {
cout << "Whileループの反復: " << count << endl;
count++;
}
return 0;
}

この例では:

  1. countを1に初期化します。
  2. ループはcountが5以下の間続きます。
  3. ループ内で現在のカウントを印刷し、それをインクリメントします。

出力は以下のようになります:

Whileループの反復: 1
Whileループの反復: 2
Whileループの反復: 3
Whileループの反復: 4
Whileループの反復: 5

Do-Whileループ

Do-WhileループはWhileループに似ていますが、1つの重要な違いがあります:条件をチェックする前に少なくとも1回コードブロックを実行します。

シntax

do {
// 繰り返すコード
} while (条件);

#include <iostream>
using namespace std;

int main() {
int number;
do {
cout << "1から10の間の数字を入力してください: ";
cin >> number;
} while (number < 1 || number > 10);

cout << "あなたが入力した数字: " << number << endl;
return 0;
}

この例では:

  1. ユーザーに数字を入力するように促します。
  2. 入力をcinを使って読み取ります。
  3. 数字が1未満または10を超える場合にループを続けます。
  4. 有効な数字が入力されたら、それを印刷しループを終了します。

このループは、ユーザーが1から10の間の有効な数字を入力するまで続けます。

ループ制御文

時々、ループに対してさらに細かい制御が必要です。その場合、ループ制御文が便利です。以下の2つの重要な制御文を見てみましょう:

Break文

break文は、ループを予期せず終了させます。

#include <iostream>
using namespace std;

int main() {
for (int i = 1; i <= 10; i++) {
if (i == 6) {
cout << "ループを終了します!" << endl;
break;
}
cout << "反復: " << i << endl;
}
return 0;
}

このループは、反復5まで印刷し、iが6になる時点で終了します。

Continue文

continue文は、現在の反復の残りのコードをスキップし、次の反復に進みます。

#include <iostream>
using namespace std;

int main() {
for (int i = 1; i <= 5; i++) {
if (i == 3) {
cout << "反復3をスキップします" << endl;
continue;
}
cout << "反復: " << i << endl;
}
return 0;
}

このループは、反復3をスキップして、他のすべての反復を印刷します。

無限ループ

無限ループは、決して終了しないループです。通常は望ましくありませんが、ゲーム開発などの一部のケースでは便利です。

while (true) {
// これは終了しない限り実行されます
}

無限ループには注意してください!必ず終了する方法を確保してください。

ループの比較

以下に、3つの主要なループの種類の簡単な比較を示します:

ループの種類 使用时机 シntax
For 反復回数が分っている場合 for (init; condition; update) { }
While 反復回数が分らない場合 while (condition) { }
Do-While 少なくとも1回は実行したい場合 do { } while (condition);

結論

ループはプログラミングの基本概念であり、それをマスターすることで、あなたのプログラミングスキルが大幅に向上します。練習は完璧さを生みます!自分でループを書いて、さまざまなシナリオを試してみてください。

あなたの信頼できるコンピュータサイエンスの先生として、私はこれらの概念を遊びながら学んでください。次の大規模なビデオゲームや革新的なアプリをこれらのループ構造を使って作成するかもしれません!

ハッピーコーディング、そしてあなたのループがいつでも望むように終了するように!

Credits: Image by storyset