Do Until Loop 繰り返し [VB]

条件を満たすまで繰り返し実行する Do Until Loop

繰返し制御文
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 Until Loop は、Do While Loopと同様に繰り返し処理を実行しますが、条件式を判定する箇所が異なります。

Do Until Loop は、先に条件式を判定します。条件式を満さなければ、繰り返し処理を実行し、条件式を満たすと、Loop を抜けます。

先に条件式を判定するので、最初から条件式を満たしていると、1度もループ処理を実行しません。

  Do Until 条件式
    ............
    .......
    ...........
  Loop

Do Until Loop サンプルプログラム

Do Until Loop を使って、Do While Loopと同様に、画面から入力した整数の合計が100を超えなければ、入力を受付けるプログラムを作成します。100を超えたら、Do Until Loop 処理を抜けます。

ソースリストの枠内をクリックすると全選択できます。

Module Module1

  Sub Main()
      ' 変数の宣言
      Dim inStr As String
      Dim inNum As Integer = 0
      Dim sum As Integer = 0
      ' 入力値の和が100を超えなければ入力を続ける
      Do Until 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

Do Until の条件式は、sum > 100 ですが、Do While では、sum <= 100 となります。同じことをするプログラムでも、条件式が異なります。

  ' Do Until Loopでは
  Do Until sum > 100
    ............
    .........
    ............
  Loop

  ' Do While Loopでは
  Do While sum <= 100
    ............
    .........
    ............
  Loop

大事なことは、後から見ても、他人が見ても、分かりやすいプログラムを書くことです。また、コメントを適度に書くことも大切です。


次回は、Do Loop While について勉強します。

次回:Do Loop While