Download presentation
Presentation is loading. Please wait.
Published byElfrieda Chapman Modified over 9 years ago
2
Repetition Chapter 6 - Visual Basic Schneider 1
3
Loop Structure Elements of a Loop Structure Processing Lists of Data with Do Loops Chapter 6 - Visual Basic Schneider2
4
Do While ……. Loop Do Until …… Loop For …… Next loop Chapter 6 - Visual Basic Schneider3
5
Looping: the process of repeating a series of statements multiple times until a criteria is met Chapter 6 - Visual Basic Schneider4
6
Loop control variable: A variable used to determine whether a loop will be executed Loop body: The statement (s) that are executed each time a loop repeats Chapter 6 - Visual Basic Schneider5
7
Do While condition is true statement(s) Loop Chapter 6 - Visual Basic Schneider6
8
7 Is the condition true Execute statements within the loop Execute statements that follow the loop Yes No
9
Private Sub cmdDisplay_Click() Dim num As Integer ' Display the numbers from 1 to 10 num = 1 Do While num <= 10 picNumbers.Print num; num = num + 1 Loop End Sub Chapter 6 - Visual Basic Schneider8
10
Is executed as long as the condition is True. If condition is False then the next statement after the Loop is executed. Chapter 6 - Visual Basic Schneider9
11
Methods of controlling loops: ◦ Counter-controlled loops repeat a specific number of times ◦ Event-controlled loops repeat until something happens in the loop body to change the value of loop control variable. Chapter 6 - Visual Basic Schneider10
12
passWord = "" Do While passWord <> "SHAZAM" passWord = UCase(InputBox("What is the password?")) Loop Chapter 6 - Visual Basic Schneider11
13
Is useful when the programmer knows how many times the loop should be executed. Initialize the counter by setting it to a beginning value before entering the loop. The counter is incremented (or decremented) by the same value during each repetition. Chapter 6 - Visual Basic Schneider12
14
num = 1 Do While num <= 10 picOutput.Print num; num = num + 1 Loop Chapter 6 - Visual Basic Schneider13
15
Is executed until the condition becomes True Any Do While…. Loop can be rewritten as a Do Until ….. Loop Chapter 6 - Visual Basic Schneider14
16
Private Sub cmdDisplay_Click() Dim passWord As String, info As String If UCase(txtName.Text) = "SECRET.TXT" Then Do passWord = UCase(InputBox("What is the password?")) Loop Until passWord = "SHAZAM" End If Open txtName.Text For Input As #1 Input #1, info picItem.Cls picItem.Print info Close #1 End Sub Chapter 6 - Visual Basic Schneider15
17
Private Sub cmdEstimate_Click() Dim amt As Single, yrs As Integer ' Years to deplete savings account picResult.Cls amt = 15000 yrs = 0 Do amt = amt * 1.05 - 1000 yrs = yrs + 1 Loop Until amt <= 0 picResult.Print "It takes"; yrs; "years to deplete the account." End Sub Chapter 6 - Visual Basic Schneider16
18
The Do While … Loop executes while the condition is true The Do Until….. Loop executes until the condition is true Both can be used to create any type of loop Chapter 6 - Visual Basic Schneider17
19
EOF(n) is True if the end of the file having reference number n has been reached. Otherwise, it is False Example: Open “PHONE.TXT” for Input As #1 Do While Not EOF(1) Input #1, nom, phoneNum picOutput.Print nom, phoneNum Loop Close #1 Chapter 6 - Visual Basic Schneider18
20
A counter is a numeric variable that keeps track of the number of items that have been processed in a loop. An accumulator is a numeric variable that holds a sub-total during multiple passes through a loop. Chapter 6 - Visual Basic Schneider19
21
Private Sub cmdAnalyze_Click() Dim numCoins As Integer, sum As Single, value As Single Open "COINS.TXT" For Input As #1 numCoins = 0 sum = 0 Do While Not EOF(1) Input #1, value numCoins = numCoins + 1 sum = sum + value Loop picValue.Print "The value of the"; numCoins; "coins is"; sum; "cents." End Sub Chapter 6 - Visual Basic Schneider20
22
Do While ……. Loop Do ……. Loop While Do ……. Loop Until Do Until ……. Loop Chapter 6 - Visual Basic Schneider21
23
num = 11 Do While num <= 10 picOutput.Print num; num = num + 1 Loop Chapter 6 - Visual Basic Schneider22 num = 11 Do picOutput.Print num; num = num + 1 Loop until num <= 10 How many times will the following loops execute?
24
Do While i < 10 i = i + 1 Loop Chapter 6 - Visual Basic Schneider23 Do i = i + 1 Loop While i < 10 Which loop is infinite? Do Until i < 10 Loop Do i = i + 10 Loop Until i < 10
25
A loop where the number of iterations is determined by a range of values for a numeric variable Syntax: For controlVariable = initial To terminal statement(s) Next controlVariable Chapter 6 - Visual Basic Schneider24
26
Private Sub cmdDisplayTable_Click() Dim i As Integer ‘Display a table of the first 5 numbers and their squares For i = 1 To 5 picTable.Print i; i ^ 2 Next i End Sub Chapter 6 - Visual Basic Schneider25 Initial Value Control variable Terminating value
27
Dim numVar As Integer For numVar = 1 To 5 Step 2 picOutput.Print numVar; Next numVar Output: 1 3 5 Chapter 6 - Visual Basic Schneider26
28
1. The control variable is assigned the initial value. 2. After each loop iteration, the step value is added to the value of the control variable. (If there is no step value, 1 is added.) 3. Iteration continues until the terminating value is exceeded. Chapter 6 - Visual Basic Schneider27
29
You should never modify the value of the loop control variable in the loop body. Each For loop must end with a Next statement. Chapter 6 - Visual Basic Schneider28
30
Private Sub cmdDisplay_Click() Dim i As Integer For i = 1 To 10 picOutput.Print "*"; Next i End Sub Output: ********** Chapter 6 - Visual Basic Schneider29
31
Private Sub cmdDisplay_Click() Dim i As Integer, stars As Integer stars = Val(InputBox("Row length (1-20) : ")) For i = 1 To stars picOutput.Print "*"; Next i End Sub Chapter 6 - Visual Basic Schneider30
32
Dim numVar As Integer For numVar = 8 To 1 Step -2 picOutput.Print numVar; Next numVar Output: 8 6 4 2 Chapter 6 - Visual Basic Schneider31
33
For outer = 1 To 4 For inner = 1 To 2.. Next inner Next outer Chapter 6 - Visual Basic Schneider32
34
Private Sub cmdDisplay_Click() Dim i As Integer, j As Integer For i = 1 To 10 For j = 1 To 10 picOutput.Print "*"; Next j picOutput.Print Next i End Sub Chapter 6 - Visual Basic Schneider33
35
For i= -5 To -1 Step - 2 picOutput.Print i; Next i picOutput.Print i; Chapter 6 - Visual Basic Schneider34 For i= 1 To 5 Step 2 i=i+1 picOutput.Print i; Next i picOutput.Print i;
36
Private Sub cmdDisplay_Click() Dim i As Integer, j As Integer For i = 1 To 10 For j = i To 10 picOutput.Print "*"; Next j picOutput.Print Next i End Sub Chapter 6 - Visual Basic Schneider35 Private Sub cmdDisplay_Click() Dim i As Integer, j As Integer For i = 1 To 10 For j = 1 To i picOutput.Print "*"; Next j picOutput.Print Next i End Sub
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.