Home > Outline & Objectives

Outline & Objectives


 

1  

Chapter 6 

Repetition


Chapter 6 - Visual Basic       Schneider

 

2  

Outline & Objectives 

  • Loop Structure
  • Elements of a Loop Structure
  • Processing Lists of Data with Do Loops

Chapter 6 - Visual Basic       Schneider

 

3  

Types of LOOP Structures 

  • Do While ����. Loop
  • Do  Until ���� Loop
  • For ���� Next loop

Chapter 6 - Visual Basic       Schneider

 

4  

Basic Definition 

  • Looping: the process of repeating a series of statements multiple times until a criteria is met

 


Chapter 6 - Visual Basic       Schneider

 

5  

Basic Components of Loops 

  • 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       Schneider

 

6  

The Do While ����. Loop 

Do While condition is true

    statement(s)

Loop


Chapter 6 - Visual Basic       Schneider

 

7  

Flowchart for a Do While Loop 

Is the condition true 

Execute statements

within

the loop 

Execute statements

that follow the loop 

Yes 

No


Chapter 6 - Visual Basic       Schneider

 

8  

Example (Displays the numbers from 1 through 10) 

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       Schneider

 

9  

The Do While ����. Loop 

  • 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       Schneider

 

10  

Controlling Loops 

  • 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       Schneider

 

11  

Example of event-controlled loops 

passWord = ""

Do While passWord <> "SHAZAM"

  passWord = UCase(InputBox("What is the password?"))

Loop

 


Chapter 6 - Visual Basic       Schneider

 

12  

Counter-controlled Loops 

  • 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       Schneider

 

13  

Example 

num = 1

Do While num <= 10

  picOutput.Print num;

  num = num + 1

Loop


Chapter 6 - Visual Basic       Schneider

 

14  

Do Until ����. Loop 

  • Is executed until the condition becomes True
  • Any Do While��. Loop can be rewritten as a Do Until ��.. Loop

Chapter 6 - Visual Basic       Schneider

 

15  

Example (requires the user to give a password before opening a file) 

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       Schneider

 

16  

Example (years to deplete a saving account) 

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       Schneider

 

17  

Comparing While�� and Until Loops 

  • 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       Schneider

 

18  

EOF Function 

  • 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       Schneider

 

19  

Counters and Accumulators 

  • 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       Schneider

 

20  

Example: Counter & Accumulator 

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       Schneider

Compare 

  • Do While ����. Loop
  • Do ����. Loop While
  • Do ����. Loop Until
  • Do Until ����. Loop
  

21


Chapter 6 - Visual Basic       Schneider

Review 

num = 11

Do While num <= 10

  picOutput.Print num;

  num = num + 1

Loop  
 
 

22  

num = 11

Do

  picOutput.Print num;

  num = num + 1

Loop until num <= 10 
 

How many times will the following loops execute?


Chapter 6 - Visual Basic       Schneider

Review 

Do While i < 10

     i = i + 1

Loop  
 

23  

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


Chapter 6 - Visual Basic       Schneider

 

24  

For �� Next Loop 

  • 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       Schneider

 

25  

Example 

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 

Initial Value 

Control variable 

Terminating value


Chapter 6 - Visual Basic       Schneider

 

26  

Example 

Dim numVar As Integer

For numVar = 1 To 5 Step 2

    picOutput.Print numVar;

Next numVar  

Output: 1  3  5

 


Chapter 6 - Visual Basic       Schneider

 

27  

When a For statement is encountered 

  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       Schneider

 

28  

Rules for Using For ... Next loop 

  • 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       Schneider

 

29  

Example 

Private Sub cmdDisplay_Click()

    Dim i As Integer

    For i = 1 To 10

        picOutput.Print "*";

    Next i

End Sub 

Output: **********


Chapter 6 - Visual Basic       Schneider

 

30  

Example  

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       Schneider

 

31  

Example 

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       Schneider

 

32  

Nested Loops 

For outer = 1 To 4

    For inner = 1 To 2

                  ..

                  ..

    Next inner

Next outer


Chapter 6 - Visual Basic       Schneider

 

33  

Example: Display a 10x10 rectangle of stars 

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       Schneider

Review 

For i= -5 To -1 Step - 2

    picOutput.Print i;

Next i

picOutput.Print i;  
 

34  

For i= 1 To 5 Step 2

     i=i+1   

    picOutput.Print i;

Next i

picOutput.Print i;


Chapter 6 - Visual Basic       Schneider

 

35  

Review 

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 

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


Chapter 6 - Visual Basic       Schneider

Search more related documents:Outline & Objectives
Download Document:Outline & Objectives

Set Home | Add to Favorites

All Rights Reserved Powered by Free Document Search and Download

Copyright © 2011
This site does not host pdf,doc,ppt,xls,rtf,txt files all document are the property of their respective owners. complaint#nuokui.com
TOP