C# do whileの使い方や書き方

do whileとは、はじめに1回{}(ブロック)内の処理を実行してから、条件式の結果がtrueである限り{}(ブロック)内の処理と条件式を繰り返し実行するものです。
## do whileの使い方や書き方

do
{
   処理
}while(条件式);
1. {}(ブロック)内の処理が実行されます。

2. while(条件式);が実行されます。
1. 条件式の結果がtrueの場合
1. {}(ブロック)内の処理が再び実行されます。
2. このあとは条件式の結果がtrueである限り、while(条件式);処理を繰り返します。
3. 条件式の結果がfalseになるとwhileを終了します。
2. 条件式の結果がfalseの場合
1. whileを終了します。

using static System.Console;
class TestClass { static void Main() { int i = 1; do { WriteLine("イチゴが" + i + "つ"); i++; } while (i < 4); } }
イチゴが1つ
イチゴが2つ
イチゴが3つ
int i = 1;

変数「 i 」に「 1 」を代入して初期化しています。

WriteLine(“イチゴが” + i + “つ”);

while (i < 4);より先に実行されます。
「 イチゴがiつ 」と表示されます。
1回目の処理が実行される時、「 i 」の値は「 1 」なので、「 イチゴが1つ 」
2回目の処理が実行される時、「 i 」の値は「 2 」なので、「 イチゴが2つ 」
3回目の処理が実行される時、「 i 」の値は「 3 」なので、「 イチゴが3つ 」
と表示されます。

i++;

while (i < 4);より先に実行されます。
変数「 i 」に「 1 」が追加されます。
変数「 i 」は「 int i = 1; 」で「 1 」で初期化しているので、
1回目の処理で「 i 」の値が「 1 」増えて「 2 」
2回目の処理で「 i 」の値が「 1 」増えて「 3 」
3回目の処理で「 i 」の値が「 1 」増えて「 4 」
になります。

while (i < 4);

変数「 i 」が「 3 」以下の場合、ブロック内の処理を繰り返し実行します。
変数「 i 」は3回目のブロック内の処理で「 4 」になるので、このwhileは3回繰り返すことになります。

## do whileの例文の処理の流れ
例文がどのように処理されていくのか、順番に解説していきたいと思います。

using static System.Console;
class TestClass { static void Main() { int i = 1; do { WriteLine("イチゴが" + i + "つ"); i++; } while (i < 4); } }
1回目の処理の実行

1. int i = 1;が実行される。
変数「 i 」が「 1 」で初期化される。
2. ブロック内のWriteLine(“イチゴが” + i + “つ”);が実行される。
「 i 」の値は「 1 」なので、「 イチゴが1つ 」と表示される。
3. ブロック内のi++;が実行される。
「 i 」の値が「 1 」増えて「 2 」になる。
4. while (i < 4);が実行される。
「 i 」の値が「 3 」以下の場合、ブロック内の処理を繰り返す。
「 i 」の値は「 2 」なので「 while (i < 4); 」の結果はtrueになり、ブロック内を2回目の実行をする。

2回目の処理の実行

1. ブロック内のWriteLine(“イチゴが” + i + “つ”);が実行される。
「 i 」の値は「 2 」なので、「 イチゴが2つ 」と表示される。
2. ブロック内のi++;が実行される。
「 i 」の値が「 1 」増えて「 3 」になる。
3. while (i < 4);が実行される。
「 i 」の値は「 3 」なので「 while (i < 4); 」の結果はtrueになり、ブロック内を3回目の実行をする。

3回目の処理の実行

1. ブロック内のWriteLine(“イチゴが” + i + “つ”);が実行される。
「 i 」の値は「 3 」なので、「 イチゴが3つ 」と表示される。
2. ブロック内のi++;が実行される。
「 i 」の値が「 1 」増えて「 4 」になる。
3. while (i < 4);が実行される。
変数「 i 」の値は「 4 」なのでwhile (i < 4);の結果はfalseになり、whileが終了する。