HOME >>Do〜Loop(繰り返し処理)
今回はDo〜Loop文を説明します。
Do〜Loopには二つの書き方があります。
@While・・・条件がTrueの場合は処理を繰り返す
AUntil・・・条件がFalseになるまで処理を繰り返す
こちらはForと違って繰り返してもカウンタ変数などがない為、値は増えていきません。
自分で変数を指定してプラスしていきましょう。
Forだと回数指定ですが、Do〜Loopを使用すると終わる値がわからない時などに使用します。
まずは
While文から見ていきましょう
Do While 条件式
条件を満たすまでの処理
Loop
条件を満たすまで繰り返します。
なので最初から条件を満たしている場合はなにもしません。
While文の例↓
Dim i As Integer
i = 1
'iが3以下の場合は繰り返す
Do While i <″
MsgBox (i)
'iの変数に1プラスする
i = i + 1
Loop
|
Do〜Loop文で大事なのは変数で条件を指定した場合
その変数の値を自分で増やしてあげないと、永久に続いてしまいます・・・
間違って永久に続いた場合は「Ctrl」+「Break」と押してください。
(処理が中断されます。)
他にも上の文で Do While i > 3 とすると
最初に変数(i)は3以下となってFalseとなるので繰り返しの処理はされません。
つぎはUntil文を見ていきましょう
書き方はWhileと同じです。
両方に言える事ですが、Doの後に書くか、Loopの後に書くかで条件が変わってきます。
Doの後に書くと、条件を満たしていた場合は一回も処理がされません。
Loopの後に書くと、最後に条件判断する為、最低でも一回処理がされます。
UntilはLoopの後に書いてみたいと思います。
Dim i As Integer
i = 1
'iが3以下の場合は繰り返す
Do
MsgBox (i)
'iの変数に1プラスする
i = i + 1
Loop Until i > 3
|
最後に条件を判断する為、変数 i の初期値を3以上としても一回は処理されます。
UntilなのでFalseを返す条件式を書いています。
これでは3より大きくなるまで繰り返します。
ここまでで少しはプログラムに対してわかってきましたか??
次はそれぞれの処理の応用編を書いていきたいと思います。