繰り返しを最低1回は実行 Do Loop While
繰返し制御文 |
---|
For Next |
For Next 入れ子 |
For Step Next |
For Each Next |
Exit For 強制終了 |
Do While Loop |
Do Until Loop |
Do Loop While |
Do Loop Until |
Exit Do 強制終了 |
Do Loop While は、繰り返し処理を実行後、条件式を判定し、条件を満たしていれば、さらに繰り返し処理を実行します。
Do While Loop との違いは、Do と Loop 繰り返し部分が1回実行された後に、条件式を判定する点です。そして、条件式を満たしていれば、繰り返し部分が実行されます。つまり、Do Loop While は必ず、繰り返し部分が最低1回は実行されます。
構文は次のようになります。
Do ............ ....... .......... Loop While 条件式
Do Loop While サンプルプログラム
Do Loop While を使って、キーボードから入力した整数数値の合計が100以下ならば、キーボード入力を受け付けるプログラムを作成します。
ソースリストの枠内をクリックすると全選択できます。
Module Module1 Sub Main() ' 変数の宣言 Dim inStr As String Dim inNum As Integer = 0 Dim sum As Integer = 0 ' Do Loop While を使って ' 入力値の和が100以下なら入力を続ける Do Console.WriteLine("整数を入力してください") ' キーボードから入力 inStr = Console.ReadLine() ' 入力した文字列を整数に変換 inNum = Integer.Parse(inStr) ' 入力値を加算 sum = sum + inNum Loop While sum <= 100 ' 合計値を表示 Console.WriteLine() ' 改行 Console.Write("入力整数の合計:") Console.Write(sum) Console.WriteLine() ' 改行 End Sub End Module
Do … Loop While sum <= 100 では、繰り返し部分を実行してから条件判定します。
Do While sum <= 100 … Next では、条件判定してから繰り返し部分を実行します。
上のプログラムでは、While sum <= 100 の判定を先にしても、後にしても結果は同じです
条件判定の場所が違うので、プログラムの実行経路が変ってきます。プログラムによっては実行結果が異なることもあります。
何度も同じことを言って申し訳ありませんが、大事なことは、誰が見ても分かりやすいプログラムを書くことです。
次回は、Do Loop Until の繰り返しについて学習します。
次回:Do Loop Until |
---|