条件を満たしている限りループ継続
繰返し制御文 |
---|
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 While Loopループが使えます。Do While Loop は、繰り返し条件を先に判定して、条件を満たしていれば、繰り返し処理を実行します。
繰返し回数が事前に分かっている場合には、For Step Next のほうが便利なことが多いと思います。
Do While Loopは、次のような構文になります。
Do While 条件式 ............ ......... ............ ..................... ............... Loop
条件式には、条件を満たしているか、そうでないかを判定する式を書きます。条件を満たしていれば、Do While の間を繰り返し実行します。
例えば、Do While a > b は、変数aが変数bより大きければ、Do While … Loop の間を繰り返し実行。
Do While a <= b は、変数aが変数b以下ならば、Do While … Loop の間を繰り返し実行。
Do While … Loop サンプルプログラム
Do While … Loop を使って、キーボードから入力した整数の合計値が100以下の場合、整数入力を受付けるプログラムを作成します。
キーボードから整数値の入力については、次のページも参考にしてみてください。
詳細:キーボードから整数値を入力について |
---|
ソースリストの枠内をクリックすると全選択できます。
Module Module1 Sub Main() ' 変数の宣言 Dim inStr As String = "" Dim inNum As Integer = 0 Dim sum As Integer = 0 ' 入力値の和が100以下ならば入力を続ける Do While sum <= 100 Console.WriteLine("整数を入力してください") ' キーボードから入力 inStr = Console.ReadLine() ' 入力した文字列を整数に変換 inNum = Integer.Parse(inStr) ' 入力値を加算 sum = sum + inNum Loop ' 合計値を表示 Console.WriteLine() ' 改行 Console.WriteLine("お疲れ様でした") Console.WriteLine("入力した数値の和は") Console.WriteLine(sum) Console.WriteLine("です") End Sub End Module
sum <= 100 で条件を判定して、合計値を保管する変数sumが100以下なら、 DoWhile sum <= 100 の次行から Loop の間の処理が、繰り返し実行されます。
たとえば、一番目に150を入力すると、2回目の判定で、sumが100を超えて Loop の次に処理が移ってしまいます。したがって、合計値は 150 になります。
次回は、Do Until Loop の繰り返しについて学習します。
次回:Do Until Loop の繰り返し |
---|