CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of...
-
Upload
gia-wivell -
Category
Documents
-
view
214 -
download
1
Transcript of CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of...
![Page 1: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/1.jpg)
CS 4 Intro to Programming using Visual Basic
Do Loops
Patchrawat UthaisombutUniversity of Pittsburgh
1based on lecture notes by D. Schneider
![Page 2: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/2.jpg)
Chapter 6 - VB 2005 by Schneider 2
Chapter 6 – Repetition
• 6.1 Do Loops
• 6.2 Processing Lists of Data with Do
Loops
• 6.3 For...Next Loops
• 6.4 A Case Study: Analyze a Loan
![Page 3: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/3.jpg)
How to write the following program?
• The user inputs a number x.
• The program displays the multiplication table for x.
P. Uthaisombut 3
![Page 4: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/4.jpg)
User Interface Design
• Use a Text Box to accept a number
• Use a Button to accept the “print table” command from the user
• Use a List Box to show the multiplication table.
• Put a Label near the Text Box to give a brief instruction to the user
P. Uthaisombut 4
![Page 5: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/5.jpg)
User Interface Design
P. Uthaisombut 5
![Page 6: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/6.jpg)
Expected Results
P. Uthaisombut 6
![Page 7: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/7.jpg)
Technical issues
• When does the program respond to the user?
• How do we convert text input from the Text Box into an integer?
• How do we add a line into a List Box?
• How do we construct the right string on each line of the List Box? (How do we construct the string “5 * 1 = 5”, etc. ?)
P. Uthaisombut 7
![Page 8: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/8.jpg)
Technical Issues
• How do we add exactly 12 lines into the List Box?
P. Uthaisombut 8
![Page 9: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/9.jpg)
One solution
• Put 12 lstTable.Items.Add(…) in the code
• But there is a better solution …
P. Uthaisombut 9
![Page 10: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/10.jpg)
Chapter 6 - VB 2005 by Schneider 10
6.1 Do Loops
• A loop is one of the most important structures in programming.
• Used to repeat a sequence of statements a number of times.
• The Do loop repeats a sequence of statements either as long as or until a certain condition is true.
![Page 11: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/11.jpg)
Chapter 6 - VB 2005 by Schneider 11
Do Loop Syntax
Do While condition
statement(s)
Loop
Condition is tested,If it is True,
the loop is run.If it is False,
the statements following the
Loop statementare executed.
These statements are inside the body of the loop and are run if the condition
above is True.
![Page 12: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/12.jpg)
Chapter 6 - VB 2005 by Schneider 12
Pseudocode and Flow Chart for a Do Loop
![Page 13: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/13.jpg)
Simple Illustration of Do Loop
• When the user click the button, display 1, 2,…, 7 on the List Box.
P. Uthaisombut 13
![Page 14: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/14.jpg)
Chapter 6 - VB 2005 by Schneider 14
Example 1Private Sub btnDisplay_Click(...) _
Handles btnDisplay.Click
'Display the numbers from 1 to 7
Dim num As Integer = 1
Do While num <= 7
lstNumbers.Items.Add(num)
num += 1 'Add 1 to the value of num
Loop
End Sub
![Page 15: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/15.jpg)
Back to our multiplication tablePublic Class Form1
Private Sub btnDisplay_Click(…) Handles btnDisplay.Click
Dim x As Integer
Dim y As Integer
x = CInt(txtInput.Text)
y = 1
Do While y <= 12
lstTable.Items.Add(x & " * " & y & " = " & x * y)
y += 1
Loop
End Sub
End Class
P. Uthaisombut 15
![Page 16: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/16.jpg)
Chapter 6 - VB 2005 by Schneider 16
Example: Repeat Request as Long as Response in Incorrect
Dim passWord As String = ""
Do While passWord <> "SHAZAM"
passWord = InputBox("What is the password?")
passWord = passWord.ToUpper
Loop
passWord is the loop control variable because the value stored in passWord is what is tested to determine if the loop should continue or stop.
![Page 17: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/17.jpg)
Chapter 6 - VB 2005 by Schneider 17
Post Test Loop
Do
statement(s)
Loop Until condition
Loop is executed once and then the conditionis tested. If it is False, the loop is run again.
If it is True, the statements following the Loop statement are executed.
![Page 18: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/18.jpg)
Chapter 6 - VB 2005 by Schneider 18
Example: Repeat Request Until Proper Response is Given
Do
passWord = InputBox("What is the password?")
passWord = passWord.ToUpper
Loop Until passWord = "SHAZAM"
![Page 19: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/19.jpg)
Chapter 6 - VB 2005 by Schneider 19
Pseudocode and Flowchart for a Post-Test Loop
![Page 20: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/20.jpg)
Chapter 6 - VB 2005 by Schneider 20
Example 4: Form
txtAmount
txtWhen
![Page 21: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/21.jpg)
Chapter 6 - VB 2005 by Schneider 21
Example 4: CodePrivate Sub btnCalculate_Click(...) Handles
btnCalculate.Click
Dim balance As Double, numYears As Integer
balance = CDbl(txtAmount.Text)
Do While balance < 1000000
balance += 0.06 * balance
numYears += 1
Loop
txtWhen.Text = "In " & numYears & _
" years you will have a million dollars."
End Sub
![Page 22: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/22.jpg)
Chapter 6 - VB 2005 by Schneider 22
Example 4: Output
![Page 23: CS 4 Intro to Programming using Visual Basic Do Loops Patchrawat Uthaisombut University of Pittsburgh 1 based on lecture notes by D. Schneider.](https://reader036.fdocuments.in/reader036/viewer/2022062621/551c072f550346b24f8b4f2e/html5/thumbnails/23.jpg)
Chapter 6 - VB 2005 by Schneider 23
Comments
• Be careful to avoid infinite loops – loops that never end.
• Visual Basic allows for the use of either the While keyword or the Until keyword at the top or the bottom of a loop.
• This textbook will use only While at the top and only Until at the bottom.