繰り返し(2);Do文→条件による繰り返し
・Do-Loop Until文;同じようなことを繰り返したい場合で、回数の指定ではなく条件によって繰り返す
・For文を使わずわざわざDo文で書いてみよう(1+2+3+...)
・年齢計算プログラムにおいて、非常識な入力ならば、再入力させよう
・Do...Loop文には様々な書式がありますが、ここでは、Do-Loop Until(教科書p362書式4)のみを覚えよう!
○Do-Loop Until
- 繰り返しつまりループのための命令として、For文を勉強した。
For文は予め繰り返す回数が決まっている場合に非常に有効なループである。
- しかし、予め繰り返す回数が決まっておらず、ループしたい場合もある。
- このような時に使う命令の一つが、Do文である。
- Do文はいくつか(四種類)の使い方があるが、ここでは、
Do-Loop Until という使い方を中心に勉強しよう(P169形式2)。
-
Do-Loop Until の使い方
- このプログラムでは、2006年などを入力すると、再度入力が催促されることになる。これによって、未来に生まれた人の年齢は計算されずに済む。
○Doループを使った例;
- グラフィックメソッドとDoループを組み合わせて使ってみよう。
- 画面(Formウィンドウ)の最左上に直径40(半径20)の円を描いてみる。
DrawEllipse( Pens.Black, 0, 0, 40, 40)
- 次に、次々とこの隣(右)に円を描かせてみよう。つまり、次の円の始点(左上)は、(1, 0)である。
- そして、画面(Formウィンドウ)の最右(Size.Width-1, 0)まで次々と描かせてみよう。
もし、For文を使って書くとすると、次のようになるが、For文ではなく、Do文で書いてみること!
- Dim grph As System.Drawing.Graphics = Me.CreateGraphics
Dim x
For x = 0 To Size.Width-1
grph.DrawEllipse( Pens.Black, x, 0, 40, 40 )
Next x
○Do文とFor文の違い
- For文は予め繰り返す回数が分かっている場合に使うが、Do文は回数が分かっていない場合に非常に有効である。
- 観覧車を乗るのに、あらかじめ乗る回数を決めておくのに対して、例えば気持ち悪くなるまで繰り返し乗り続ける、といった感じである。
教科書;
17.5 Do...Loop文 p362
[「C班」プログラミング基礎のTopに戻る]