Flow of Control - PowerPoint PPT Presentation

About This Presentation
Title:

Flow of Control

Description:

decide whether or not to execute a particular statement, or ... and the lowercase alphabet (a-z) both appear in alphabetical order in Unicode ... – PowerPoint PPT presentation

Number of Views:41
Avg rating:3.0/5.0
Slides: 20
Provided by: rebecc2
Learn more at: https://www.cs.unca.edu
Category:

less

Transcript and Presenter's Notes

Title: Flow of Control


1
Flow of Control
  • Unless indicated otherwise, the order of
    statement execution through a method is linear
    one after the other in the order they are written
  • Some programming statements modify that order,
    allowing us to
  • decide whether or not to execute a particular
    statement, or
  • perform a statement over and over repetitively
  • The order of statement execution is called the
    flow of control

2
Conditional Statements
  • A conditional statement lets us choose which
    statement will be executed next
  • Therefore they are sometimes called selection
    statements
  • Conditional statements give us the power to make
    basic decisions
  • Java's conditional statements are the if
    statement, the if-else statement, and the switch
    statement

3
The if Statement
  • The if statement has the following syntax

if ( condition ) statement
4
The if Statement
  • An example of an if statement

if (sum gt MAX) delta sum -
MAX System.out.println ("The sum is " sum)
First, the condition is evaluated. The value of
sum is either greater than the value of MAX, or
it is not.
If the condition is true, the assignment
statement is executed. If it is not, the
assignment statement is skipped.
Either way, the call to println is executed next.
  • See Age.java (page 112)

5
Logic of an if statement
6
Boolean Expressions
  • A condition often uses one of Java's equality
    operators or relational operators, which all
    return boolean results
  • equal to
  • ! not equal to
  • lt less than
  • gt greater than
  • lt less than or equal to
  • gt greater than or equal to
  • Note the difference between the equality operator
    () and the assignment operator ()

7
The if-else Statement
  • An else clause can be added to an if statement to
    make it an if-else statement

if ( condition ) statement1 else
statement2
  • If the condition is true, statement1 is executed
    if the condition is false, statement2 is executed
  • One or the other will be executed, but not both
  • See Wages.java (page 116)

8
Logic of an if-else statement
9
Block Statements
  • Several statements can be grouped together into a
    block statement
  • A block is delimited by braces ( )
  • A block statement can be used wherever a
    statement is called for in the Java syntax
  • For example, in an if-else statement, the if
    portion, or the else portion, or both, could be
    block statements
  • See Guessing.java (page 117)

10
Nested if Statements
  • The statement executed as a result of an if
    statement or else clause could be another if
    statement
  • These are called nested if statements
  • See MinOfThree.java (page 118)
  • An else clause is matched to the last unmatched
    if (no matter what the indentation implies)

11
Comparing Characters
  • We can use the relational operators on character
    data
  • The results are based on the Unicode character
    set
  • The following condition is true because the
    character '' comes before the character 'J' in
    Unicode

if ('' lt 'J') System.out.println (" is less
than J")
  • The uppercase alphabet (A-Z) and the lowercase
    alphabet (a-z) both appear in alphabetical order
    in Unicode

12
Comparing Strings
  • Remember that a character string in Java is an
    object
  • We cannot use the relational operators to compare
    strings
  • The equals method can be called on a string to
    determine if two strings contain exactly the same
    characters in the same order
  • The String class also contains a method called
    compareTo to determine if one string comes before
    another alphabetically (as determined by the
    Unicode character set)

13
Comparing Floating Point Values
  • We also have to be careful when comparing two
    floating point values (float or double) for
    equality
  • You should rarely use the equality operator ()
    when comparing two floats
  • In many situations, you might consider two
    floating point numbers to be "close enough" even
    if they aren't exactly equal
  • Therefore, to determine the equality of two
    floats, you may want to use the following
    technique

if (Math.abs (f1 - f2) lt 0.00001)
System.out.println ("Essentially equal.")
14
Logical Operators
  • Boolean expressions can also use the following
    logical operators
  • ! Logical NOT
  • Logical AND
  • Logical OR
  • They all take boolean operands and produce
    boolean results
  • Logical NOT is a unary operator (it has one
    operand), but logical AND and logical OR are
    binary operators (they each have two operands)

15
Logical NOT
  • The logical NOT operation is also called logical
    negation or logical complement
  • If some boolean condition a is true, then !a is
    false if a is false, then !a is true
  • Logical expressions can be shown using truth
    tables

16
Logical AND and Logical OR
  • The logical and expression
  • a b
  • is true if both a and b are true, and false
    otherwise
  • The logical or expression
  • a b
  • is true if a or b or both are true, and false
    otherwise

17
Truth Tables
  • A truth table shows the possible true/false
    combinations of the terms
  • Since and each have two operands, there are
    four possible combinations of true and false

18
Logical Operators
  • Conditions in selection statements and loops can
    use logical operators to form complex expressions

if (total lt MAX !found) System.out.println
("Processing")
  • Logical operators have precedence relationships
    between themselves and other operators

19
Truth Tables
  • Specific expressions can be evaluated using truth
    tables
Write a Comment
User Comments (0)
About PowerShow.com