C#のwhile文の使い方!条件付きループを基礎から学ぼう
生徒
「C#で、同じ処理を繰り返したいときって、どうすればいいんですか?」
先生
「そういう時には、while
文を使うと便利です。同じ処理を条件付きで繰り返すことができますよ。」
生徒
「条件付きってどういう意味ですか?」
先生
「指定した条件が「真(true)」の間だけ、処理を繰り返すということです。実際に見てみましょう!」
1. while文とは?
C#のwhile
文とは、「ある条件が満たされている間、何度でも同じ処理を繰り返す」ための繰り返し処理(ループ処理)の一つです。
例えば、「変数の値が5未満の間、繰り返す」といった指定ができます。これにより、手動で同じ命令を何度も書く必要がなくなり、効率的にコードを書くことができます。
「条件付きループ」とも呼ばれ、「条件が満たされている間だけ繰り返す」という点が特徴です。
2. while文の基本構文
while文の基本的な書き方は以下のようになります。
while (条件)
{
// 繰り返したい処理
}
ポイント:条件
の部分には「true」か「false」を返す式を書きます。条件が「true」である限り、波かっこ{ }
の中の処理が何度も実行されます。
3. 具体的な使用例
例として、1から5までの数字を画面に表示するプログラムを作ってみましょう。
int number = 1;
while (number <= 5)
{
Console.WriteLine(number);
number++;
}
number++
というのは「numberを1増やす」という意味です。このようにして、繰り返すたびに変数の値を変化させることで、ループを終了に導きます。
実行結果:
1
2
3
4
5
4. 無限ループに注意!
条件がずっと「true」のままだと、無限ループになってしまいます。例えば、次のコードはずっと1
を出力し続けてしまいます。
int x = 1;
while (x <= 5)
{
Console.WriteLine(x);
// x を増やしていないので、ずっと x は 1 のまま!
}
このように、ループの中で条件が「false」になるように工夫する必要があります。
5. while文のよくある使い方
while文は、ユーザーの入力を待つ場面や、何かの条件が整うまで繰り返すような場面でよく使われます。以下は、ユーザーが「exit」と入力するまで繰り返す例です。
string input = "";
while (input != "exit")
{
Console.Write("文字を入力してください(exitで終了):");
input = Console.ReadLine();
}
!=
(ノットイコール)は「〜でない場合」という意味です。Console.ReadLine()
はキーボードからの入力を受け取る命令です。
6. do-while文との違い
while
文とよく似た構文にdo-while
文があります。これは「必ず1回は処理を行ってから、条件を確認する」という特徴があります。
以下がその構文です。
int y = 1;
do
{
Console.WriteLine(y);
y++;
} while (y <= 5);
while文では最初に条件を確認しますが、do-while文では先に処理が実行される点が違いです。条件が最初からfalseでも、1回は処理されるのが特徴です。
7. ループを途中で止めたいときは?
ループの途中で繰り返しをやめたいときにはbreak
文を使います。以下の例では、数字が3になった時点でループを終了します。
int z = 1;
while (z <= 5)
{
if (z == 3)
{
break;
}
Console.WriteLine(z);
z++;
}
実行結果:
1
2
このようにbreak
を使うことで、ループを任意のタイミングで止めることができます。
8. まとめ:while文を使いこなそう
ここまでで、C#のwhile
文の基本的な使い方と、do-while
文との違い、break
による制御方法までを学びました。
プログラミングにおいて、繰り返し処理は非常によく使われるので、しっかり理解しておくことが大切です。
特に、ループの条件が変わらないと無限ループになってしまうので、条件の設計には注意しましょう。