Decisions - PowerPoint PPT Presentation

1 / 33
About This Presentation
Title:

Decisions

Description:

A Boolean Expression can be either True or False ... 'Hope' 'Hopeful' True. Chapter 5 - Visual Basic Schneider. 7. Logical Operators ... – PowerPoint PPT presentation

Number of Views:17
Avg rating:3.0/5.0
Slides: 34
Provided by: fay46
Category:

less

Transcript and Presenter's Notes

Title: Decisions


1
Chapter 5
  • Decisions

2
Outline and Objective
  • Relational and Logical Operators
  • If Blocks
  • Select Case Blocks

3
Relational Operators
  • The execution of the block If is controlled by a
    Boolean Expression
  • A Boolean Expression can be either True or False
  • Boolean Expressions are formed by using six
    Relational operators and three Logical operators

4
Relational Operators
5
Using Relational Operators on Strings
  • Computer uses a special coding system to compare
    character strings
  • Usually ANSI (also called ASCII) coding system is
    used on PC.
  • The association between characters and values of
    characters are given in Appendix A.

6
Example of Comparing Character Strings
  • Chase lt Chaz True
  • Cat lt Cat True
  • Pay lt Pay True
  • Jones ltgt James True
  • Hope lt Hopeful True

7
Logical Operators
  • The result of a logical operator is also True or
    False
  • The three Logical Operators are
  • Not
  • And
  • Or

8
Not
  • Not Negates a single expression
  • Example Suppose answ Y
  • Not ( answ y) is True

9
And
  • Combines two expressions each expression must
    be True for the entire expression to be True.
  • Example Suppose answ Y
  • (answ Y) And (answ y) is False

10
Or
  • Combines two expressions either expression (or
    both expressions) must be True for the entire
    expression to be True.
  • Example Suppose answ Y
  • (answ Y) Or (answ y) is True

11
Determine whether the following conditions are
true or false?
  • (Y ltgt X) And (143.55 lt 143.55)
  • ( 0 14) Or (6 2 - 3 lt 4 / 2 8)
  • Not ( 6 7) And ( 44 gt 33)

12
Control Structures
  • Allows the programmer to alter the normal flow of
    statement execution.
  • Types of control structures
  • Loop
  • Decision

13
Types of Decision Structures
  • The Block If Statement
  • Simple alternative if
  • Compound alternative if.else
  • Select Case Statement

14
Single Alternative Decision
  • An action is taken if the condition is true,
    otherwise the control goes to the next statement.

15
Single Alternative Decision
  • Syntax
  • If condition Then
  • action(s)
  • End If
  • If condition is true, action(s) is
    executedotherwise action(s) is skipped

16
Example of single-alternative decision
  • If (grade gt 90) Then
  • picOutput.Print Excellent Student
  • letterGrade A
  • picOutput.Print Your grade is letterGrade
  • End If

17
Compound Alternative Decision
  • Syntax
  • If condition Then
  • action1
  • Else
  • action 2
  • End If

18
Example of Compound If statement (find the
larger of two numbers)
  • Private Sub cmdFindLarger_Click()
  • Dim largerNum As Single
  • picResult.Cls
  • If Val(txtFirstNum.Text) gt Val(txtSecondNum.Tex
    t) Then
  • largerNum Val(txtFirstNum.Text)
  • Else
  • largerNum Val(txtSecondNum.Text)
  • End If
  • picResult.Print "The larger number is"
    largerNum
  • End Sub

19
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
    understand

20
Example
  • If cond1 Then
  • If cond2 Then
  • action(s)
  • End If
  • End If
  • If cond1 And cond2 Then
  • action(s)
  • End If

This is easier to understand
A confusing If Block
21
Compound Alternative Decision
  • Syntax
  • If condition1 Then
  • action1
  • ElseIf condition2 Then
  • action 2
  • ElseIf condittion3 Then
  • action3
  • Else
  • action4
  • End If

22
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) gt
    Val(txtSecondNum.Text) Then
  • picResult.Print "The larger number is"
    txtFirstNum.Text
  • ElseIf Val(txtSecondNum.Text) gt
    Val(txtFirstNum.Text) Then
  • picResult.Print "The larger number is "
    txtSecondNum.Text
  • Else
  • picResult.Print "The two numbers are
    equal."
  • End If
  • End Sub

23
Example (find cost of phone call from NY to LA)
  • Private Sub cmdDisplay_Click()
  • Dim length As Single
  • Call InputLength (length)
  • Call DisplayCost(length)
  • End Sub

24
Sub DisplayCost InputLenght
  • Private Sub DisplayCost (length As Single)
  • ' Display the cost of a call
  • PicOutput.Print "Cost of call "
    FormatCurrency ( Cost (length))
  • End Sub
  • Private Sub InputLength(length As Single)
  • ' Request the length of a phone call
  • length Val (InputBox("Duration of the call
    in minutes? "))
  • End Sub

25
Function Cost
  • Private Function Cost (length As Single) As
    Single
  • If length lt 1 Then
  • Cost .46
  • Else
  • Cost .46 (length 1) .36
  • End If
  • End Function

26
The Select Case Block
  • Similar to If statement
  • Used instead of nested If statement
  • An action to be selected from a list of
    alternatives
  • Avoids confusion of deeply nested If blocks

27
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

28
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.

29
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

30
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

31
Several different types of value-list
  • Private Sub cmdInterpret_Click() Dim x As
    Integer, y As Integer, num As Integer ' One,
    Two, Buckle My Shoe picPhrase.Cls x 2
    y 3 num Val(txtNumber.Text) Select Case
    num Case y - x, x
    picPhrase.Print "Buckle my shoe." Case
    Is lt 4 picPhrase.Print "Shut the
    door." Case x y To x y
    picPhrase.Print "Pick up sticks." Case
    7, 8 picPhrase.Print "Lay them
    straight." Case Else
    picPhrase.Print "Start all over again." End
    SelectEnd Sub

32
Selector Is a String Variable
  • Private Sub cmdInterpret_Click()
  • Dim firstName As String
  • firstName txtAnswer.Text
  • Select Case firstName
  • 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

33
Summary Points
  • How to use If statements
  • Select Case statements
  • How to use relational operators
  • How to use Not, And, and Or in Boolean expressions
Write a Comment
User Comments (0)
About PowerShow.com