C++ループの種類
こんにちは、未来のプログラマーたち!今日は、C++のループの世界に興味深い旅に出かけましょう。あなたの近所の親切なコンピュータサイエンスの先生として、私はこの基本概念をガイドして、あなたのプログラミングツールキットの必需品となるようサポートします。
ループの紹介
想像してみてください、「I love C++」を100回書かなくてはならないというタスク。退屈ですよね?ここでループが救助に駆けつけます!ループを使うことで、同じブロックのコードを繰り返し実行することができ、時間を節約し、プログラムをより効率的にすることができます。
C++には、主に3つのループの種類があります:
- Forループ
- Whileループ
- 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回印刷しています。以下に分解します:
-
int i = 1
: コウント変数i
を1に初期化します。 -
i <= 5
: これは条件です。i
が5以下の間、ループは続きます。 -
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;
}
この例では:
-
count
を1に初期化します。 - ループは
count
が5以下の間続きます。 - ループ内で現在のカウントを印刷し、それをインクリメントします。
出力は以下のようになります:
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;
}
この例では:
- ユーザーに数字を入力するように促します。
- 入力を
cin
を使って読み取ります。 - 数字が1未満または10を超える場合にループを続けます。
- 有効な数字が入力されたら、それを印刷しループを終了します。
このループは、ユーザーが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