スポンサーリンク
※サイト運営にサーバーは必須です※
~ ロリポップ! はコスパのよい初心者向けサーバーです~
while文
for文と同じく、while文は繰り返し処理を扱います。
while文は以下のように書きます。
while (条件式)
{
文(処理);
}
条件式がtrueなら、文(処理)が実行されます。
条件式がfalseなら、ループから抜けます。
もしも、条件式が最初からfalseの場合、while文の中に書かれた処理は1度も実行されません。
for文にあった、変数の初期化式(一項目)とカウント用の変数の変更式(三項目)を抜いた場合と結果が等しくなります。
つまり、条件式(二項目)だけ残したfor文とwhile文に結果の差はありません。
for(;条件式:)
{
文(処理);
}
実際に確認してみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace While01 { class Program { static void Main(string[] args) { int sum; int i; //while文で書いた場合 Console.Write("while文で書いた場合:"); sum = 0; i =0; while (i<=10) { sum += i; i++; } Console.WriteLine("0~10までの合計は"+sum); //for文で書いた場合 Console.Write("for文で書いた場合:"); sum = 0; i = 0; for(;i <= 10;) { sum += i; i++; } Console.WriteLine("0~10までの合計は" + sum); } } } |
実行結果は、
while文で書いた場合:0~10までの合計は55
for文で書いた場合:0~10までの合計は55
do~while文
繰り返し文を扱う際に、条件式がfalseであっても、最初の1回はその処理を行いたい場合があります。
そのような場合do~while文が有用です。
do~while文は以下のように使います。
do
{
文(処理);
}
while (条件式);
まず、doの後の中カッコに囲まれた文(処理)が実行されます。
次に、条件式が評価され、trueなら、文(処理)が再び実行されます。
もしも、falseなら、ループから抜けます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace While02 { class Program { static void Main(string[] args) { Console.WriteLine("正の数字を入力してください"); int i = int.Parse(Console.ReadLine()); do { Console.WriteLine("iの値は" + i); i--; } while (i > 0); } } } |
4と入力した場合
正の数字を入力してください
4
iの値は4
iの値は3
iの値は2
iの値は1
-3と入力した場合
正の数字を入力してください
-3
iの値は-3
-3<0はfalseですが、{}の中の処理は1度実行されているのが確認できます。
関連記事
~ギャンブルに絶対儲かる必勝法があるのだろうか?~
私(サイト主)はこの疑問に対して非常に興味を持ち、プログラミングで検証してみました。
このサイトを応援してもいいかなと思う人はぜひとも購入を検討してみてください。