Do While ~ Loop
毎年1万円づつ1%の金利で貯金をすると、100万円を超えるのは何年後で、その時貯残高はいくらになるかを計算しよう。
フォームは以下のようにする。
プログラムは下記の通り。
Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles Button1.Click Dim y As Decimal ' 貯金を始めてからの年数 Dim x As Decimal ' 貯金残高 x = 0 y = 0 Do While x < 1000000 x = x + 10000 x = x * 1.01 y = y + 1 Loop Label1.Text = y & "年後の貯金残高" Label2.Text = x & "円" End Sub End Class |
ここで、
Do While 条件 ステートメント Loop |
は、条件が成り立つ間ステートメント(1つまたは複数)を繰り返すことをあらわしている。ステートメントはいくつ連なっていてもよい。
Do While 条件 ステートメント1 ステートメント2 . . . ステートメントn Loop |
条件はステートメントnの実行の後Do While~Loopの先頭に処理が戻った際にだけ判定され、ステートメント1~nの実行中には判定されない。たとえば
dim x x = 0 Do While x = 0 x = 1 x = 2 Loop |
を実行すると、xに1を代入しても直ちにDo While~Loopを終了することはない。したがって、最後にx=1が実行されることはない。は1ではなく2になる。