Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 5 - Visual Basic Schneider

Similar presentations


Presentation on theme: "Chapter 5 - Visual Basic Schneider"— Presentation transcript:

1 Chapter 5 - Visual Basic Schneider
Decisions Chapter 5 - Visual Basic Schneider

2 Outline and Objectives
Relational and Logical Operators If Blocks Select Case Blocks This chapter introduces the control structure, powerful programming tool that will be used in virtually all programs from this point on.’ Control structures allow the programmer to determine whether or not a specific statements are executed. Two types of control structures: decision structure loop structure Decision structures are used to make comparisons Chapter 5 - Visual Basic Schneider

3 Chapter 5 - Visual Basic Schneider
Relational Operators The execution of an If block is controlled by a condition A condition can be either true or false Conditions can be formed by using the six Relational operators and the three Logical operators Chapter 5 - Visual Basic Schneider

4 Chapter 5 - Visual Basic Schneider
Relational Operators Chapter 5 - Visual Basic Schneider

5 Using Relational Operators on Strings
Computers use a special coding system to compare character strings called ANSI The ANSI values of characters are given in Appendix A. A snippet included in Slide 34 You do not need to memorize the table Just know the numbers, small and capital letters “0” = 48 “A”= 65 “a” = 97 Punctuation < Capitals letters < Small letters Chapter 5 - Visual Basic Schneider

6 Example of Comparing Character Strings
“Chase” < “Chaz” True “ Cat” < “Cat” True “Pay” < “Pay “ True “Jones” <> “James” True “Hope” < “Hopeful” True Chapter 5 - Visual Basic Schneider

7 Chapter 5 - Visual Basic Schneider
Logical Operators The result of a logical operator is also True or False The three Logical Operators are: Not And Or Precedence?! Chapter 5 - Visual Basic Schneider

8 Chapter 5 - Visual Basic Schneider
Not Not: Negates a single expression Example: Suppose answ = “Y” Not (answ = “y”) is True True, because (“Y” = “y” I false. Chapter 5 - Visual Basic Schneider

9 Chapter 5 - Visual Basic Schneider
And Takes two expressions, returns True only if both expressions are evaluated as being true Example: Suppose answ = “Y” (answ = “Y”) And (answ = “y”) is False False because the second condition I false. Chapter 5 - Visual Basic Schneider

10 Chapter 5 - Visual Basic Schneider
Or Takes two expressions, returns true if either one of the expressions is evaluated as being true. Example: Suppose answ = “Y” (answ = “Y”) Or (answ = “y”) is True True, because the first condition becomes True (“Y”= “Y” Chapter 5 - Visual Basic Schneider

11 Determine whether the following conditions are true or false?
(“Y” <> “X”) And ( < ) (0 = 14) Or (6 ^ <= 4 / 2 + 8) (Not (6 = 7)) And (44 > 33) A. False B. False C. True Chapter 5 - Visual Basic Schneider

12 Chapter 5 - Visual Basic Schneider
Truth Tables X Y X And Y X Or Y Not X F T Not ( X And Y ) = Not ( X Or Y ) = Chapter 5 - Visual Basic Schneider

13 Determine if True or False
a = 2, b=3 a*a < b Or Not a*a <a True ((a=b) Or Not (b<a)) And ((a<b) Or (b=a+1)) “9W” >= “9W” And “duck” < “Du” & ”ck” False Chapter 5 - Visual Basic Schneider

14 Are the conditions equivelent?
Not(a<m); n>m (a=b) and (a<b); a<>b Not ((a=b) or (a=c)) ; a<>b and a<>c Not (a>=b); (a<b) and not (a=b) Chapter 5 - Visual Basic Schneider

15 Write an Exp equal to the negation of
a>b (a<b) and (c<>d) (a=b) or (a=d) Not ( (a=b) or (a>b) ) (a<> “”) and (a<b) and (len(a) < 5) Chapter 5 - Visual Basic Schneider

16 Types of Decision Structures
If Block Statement Single alternative: If...Then Compound alternative: If Then...Else Select Case Statement Chapter 5 - Visual Basic Schneider

17 Single Alternative Decision
An action is taken if the condition is true, otherwise the control goes to the next statement. Syntax: If condition Then action End If If condition is true, action is executed. Otherwise, action is skipped Chapter 5 - Visual Basic Schneider

18 Example of single-alternative decision
If (grade > = 90) Then picOutput.Print “Excellent Student” letterGrade = “A” picOutput.Print “Your grade is “; letterGrade End If Chapter 5 - Visual Basic Schneider

19 Compound Alternative Decision
Syntax If condition Then action1 Else action 2 End If Chapter 5 - Visual Basic Schneider

20 Example of Compound If statement
Private Sub cmdFindLarger_Click() Dim largerNum As Single If Val(txtFirstNum.Text) > Val(txtSecondNum.Text) Then largerNum = Val(txtFirstNum.Text) Else largerNum = Val(txtSecondNum.Text) End If picResult.Print "The larger number is"; largerNum End Sub Chapter 5 - Visual Basic Schneider

21 Important Points in Using If Statement
Use indentation In the nested If statement, each If must have its own End If statement Care should be taken to make If blocks easy to read and understand Chapter 5 - Visual Basic Schneider

22 This is easier to understand
Example If cond1 Then If cond2 Then action(s) End If If cond1 And cond2 Then action(s) End If This is easier to understand A confusing If Block Chapter 5 - Visual Basic Schneider

23 Compound Alternative Decision
Syntax If condition1 Then action1 ElseIf condition2 Then action 2 ElseIf condittion3 Then action3 Else action4 End If This block statement searches for the first True condition, carries out its action, and then skips o the statement following end if. If none of the conditions is true, then else’s action is carried out. In general, an IF block can contain any numer of ElsIf clauses. Chapter 5 - Visual Basic Schneider

24 Chapter 5 - Visual Basic Schneider
Example (find the larger of two numbers, and report if the two numbers are equal) Private Sub cmdFindLarger_Click() picResult.Cls If Val(txtFirstNum.Text) > Val(txtSecondNum.Text) Then picResult.Print "The larger number is"; txtFirstNum.Text ElseIf Val(txtSecondNum.Text) > Val(txtFirstNum.Text) Then picResult.Print "The larger number is "; txtSecondNum.Text Else picResult.Print "The two numbers are equal." End If End Sub Chapter 5 - Visual Basic Schneider

25 Example (find cost of phone call from NY to LA)
Private Sub DisplayCost (length As Single) PicOutput.Print "Cost of call: "; FormatCurrency(Cost(length)) End Sub Private Function Cost (length As Single) As Single If length < 1 Then Cost = .46 Else Cost = (length –1) * .36 End If End Function Chapter 5 - Visual Basic Schneider

26 Single Line If Statement
Syntax If condition Then action There is no End If or Else blocks If the condition is true, the action will be executed If the condition is false, no action will be taken and the next statement will be executed This block statement searches for the first True condition, carries out its action, and then skips o the statement following end if. If none of the conditions is true, then else’s action is carried out. In general, an IF block can contain any numer of ElsIf clauses. Chapter 5 - Visual Basic Schneider

27 Chapter 5 - Visual Basic Schneider
Examples If 5 Then action(s) End If If n Then action(s) End If If Not(n < m) Then action(s) End If Equivalent to If (n >= m) Then action2 If 2 < n < 5 Then action(s) End If Wrong! (n > 2) And (n < 5) Chapter 5 - Visual Basic Schneider

28 Chapter 5 - Visual Basic Schneider
The Select Case Block Similar to If statement Used instead of compound If statements Action is selected from a list of alternatives Avoids confusion of deeply nested If blocks Chapter 5 - Visual Basic Schneider

29 Select Case Block (Syntax)
Select Case selector Case value-list-1 action1 Case value-list-2 action2 ….. Case Else action of last resort End Select Select case choices are determined by the value of an expression called a SELECTOR. . Each of the possible actions is preceded by statement of the form CASE valulist., where valuelist itemizes the values of the selector for which the action should be taken Chapter 5 - Visual Basic Schneider

30 Chapter 5 - Visual Basic Schneider
Select Case Block Each value-list contains one or more of the following types of items separated by a comma a constant a variable an expression an inequality sign preceded by Is and followed by a constant, variable, or expression a range expressed in the form a To b, where a and b are constants, variables, or expressions. Chapter 5 - Visual Basic Schneider

31 Chapter 5 - Visual Basic Schneider
Example of Select Case letterGrade = txtGrade.text Select Case letterGrade Case “A”, “B” picOutput.Print “ Good Work” Case “C” picOutput.Print “Average Work” Case Else picOutputPrint “Poor Work” End Select Chapter 5 - Visual Basic Schneider

32 Chapter 5 - Visual Basic Schneider
Example of Select Case letterGrade = txtGrade.text Select Case letterGrade Case “A”, “B” picOutput.Print “ Good Work” Case “C” picOutput.Print “Average Work” Case Else picOutputPrint “Poor Work” End Select letterGrade = txtGrade.text If(letterGrade = “A” or letterGrade=“B”) Then picOutput.Print “ Good Work” Elseif (letterGrade=“C”) Then picOutput.Print “Average Work” Else picOutputPrint “Poor Work” End if Chapter 5 - Visual Basic Schneider

33 Example of If statement
letterGrade = txtGrade.Text If (letterGrade = “A”) Or (letterGrade = “B”) Then picOutput.print “Good Work” ElseIf (letterGrade = “C”) Then picOutput.Print “Average Work” Else picOutput.Print “Poor Work” End If Chapter 5 - Visual Basic Schneider

34 Several different types of value-list
Private Sub cmdInterpret_Click() Dim x As Integer, y As Integer, num As Integer x = 2 num = Val(txtNumber.Text) Select Case num Case 3 - x, x picPhrase.Print "Buckle my shoe." Case Is <= picPhrase.Print "Shut the door." Case x + 3 To x * picPhrase.Print "Pick up sticks." Case Else picPhrase.Print "Start all over again.“ End Select End Sub Chapter 5 - Visual Basic Schneider

35 Selector Is a String Variable
Private Sub cmdInterpret_Click() Select Case txtFirstName.Text Case "Thomas" picSolution.Print "Correct." Case "Woodrow" picSolution.Print "Sorry, his full name was" picSolution.Print "Thomas Woodrow Wilson." Case "President" picSolution.Print "Are you for real?" Case Else picSolution.Print "Nice try, but no cigar." End Select End Sub Chapter 5 - Visual Basic Schneider

36 Chapter 5 - Visual Basic Schneider


Download ppt "Chapter 5 - Visual Basic Schneider"

Similar presentations


Ads by Google