Introduction
The For…Next statement creates a loop that repeats a fixed number of times.
Syntax
For counter = start To end
statements
Next counter
counter is a numeric variable that will count beginning at start until it reaches end.
statements
Next counter
counter is a numeric variable that will count beginning at start until it reaches end.
Look at the following example of an automatic greeter.
| Example 1 |
Dim intStudent As Integer
For intStudent = 1 to 9
MsgBox "Welcome to class. Please sit in seat " & CStr(intStudent)
Next intStudent
|
What is the result of Example 1?
Step Keyword
The Step keyword changes how a For…Next loop counts. It can increment by 2, 0.5, or even count down.
Syntax
For counter = start To end Step increment
In this loop, counter will count from start to end, counting by increment.
In this loop, counter will count from start to end, counting by increment.
Look at the following example of an automatic greeter when there is a quiz.
| Example 2 |
Dim intStudent As Integer
For intStudent = 1 to 19 Step 2
MsgBox "Welcome to class. Please sit in seat " & CStr(intStudent)
Next intStudent
|
What is the result of Example 2? Why is Step 2 used?
Class Exercise: Factorial
| Key Concept: How many different ways can 3 people sit down in 3 chairs? How many ways can 4 people be arranged? A factorial is a mathematical concept used to describe this concept. How is it calculated? What is 5!? |
Create a program that calculates the factorial of any number.
- Begin by designing the form.
- Use the names
txtInput, lblResult, cmdCalculate, cmdDonefor the controls on the form. - Add code to
cmdDone. - Add the code for
cmdCalculate.

| Factorial Code |
Private Sub cmdCalculate_Click()
' dimension
Dim intNumber As Integer
Dim intCounter As Integer
Dim dblResult As Double
' initialize variables
intNumber = txtInput.Text
dblResult = 1
' calculate result
For intCounter = 1 To intNumber
dblResult = dblResult * intCounter
Next intCounter
' display result
If dblResult < 1000000000 Then
' less than 1 billion, display with commas
lblResult.Caption = CStr(intNumber) & "! = " & _
Format(dblResult, "#,#")
Else
' more than 1 billion, display in scientific
lblResult.Caption = CStr(intNumber) & "! = " & _
Format(dblResult, "Scientific")
End If
End Sub
Private Sub cmdDone_Click() |
Assignment
The Divisor assignment is due in one week.
