第7講 Do While〜Loop文(繰り返し処理2)
第2話 Do While〜Loop文問題解答例

問題@ 10+11+12+・・・+200 の解答例

Private Sub CommandButton1_Click()

    Dim wa As Integer, i As Integer

    Cells(5, 1) = "10から200までの和"

    wa = 0
    i = 10
    Do While i < 201
        wa = wa + i
        i = i + 1
    Loop

    Cells(6, 1) = wa

End Sub

解説
i = i + 1
これがないとiは10のままですから、
条件i < 201をいつまでもクリアできず、
wa = wa + iの処理が無限に繰り返されてしまいます。
このようなループになった場合、
無限ループといいます。
実行してもエクセルがうんともすんとも動かないときは、
無限ループになっている可能性があります。
そのときは、Escを押してプログラムの実行を止めて、
無限ループになっていないか確認しましょう。
プログラムではうっかりすると無限ループになってしまうことが多いですので、
無限ループにならないように注意が必要です。


問題A 5+8+11+・・・+305 の解答例

Private Sub CommandButton1_Click()

    Dim wa As Integer, i As Integer

    Cells(5, 1) = "5+8+11+・・・+305の答え"

    wa = 0
    i = 5
    Do While i < 306
        wa = wa + i
        i = i + 3
    Loop

    Cells(6, 1) = wa

End Sub


問題B 2+4+6+・・・+300 の解答例

Private Sub CommandButton1_Click()

    Dim wa As Integer, i As Integer

    Cells(5, 1) = "2+4+6+・・・+300の答え"

    wa = 0
    i = 2
    Do While i < 301
        wa = wa + i
        i = i + 2
    Loop

    Cells(6, 1) = wa

End Sub


問題C 6+11+16+・・・+556 の解答例

Private Sub CommandButton1_Click()

    Dim wa As Integer, i As Integer

    Cells(5, 1) = "6+11+16+・・・+556の答え"

    wa = 0
    i = 6
    Do While i < 557
        wa = wa + i
        i = i + 5
    Loop

    Cells(6, 1) = wa

End Sub


第1話へ 第3話へ

講義トップへ

数学研究室に戻る