learn about control structures examine relational and logical operators explore how to form and...

42

Upload: evelyn-thompson

Post on 04-Jan-2016

218 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how
Page 2: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Learn about control structures Examine relational and logical

operators Explore how to form and evaluate

logical (Boolean) expressions Learn how to use the selection control

structures if, if…else, and switch in a program

Java Programming: From Problem Analysis to Program Design, 3e 2

Page 3: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Three methods of processing a program› In sequence› Branching› Looping

Branch: altering the flow of program execution by making a selection or choice

Loop: altering the flow of program execution by repetition of statement(s)

Java Programming: From Problem Analysis to Program Design, 3e 3

Page 4: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 4

Page 5: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Relational Operator› Allows you to make comparisons in a

program› Binary operator

Condition is represented by a logical expression in Java

Logical expression: expression that has a value of either true or false

Java Programming: From Problem Analysis to Program Design, 3e 5

Page 6: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 6

Page 7: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Can be used with integral and floating-point data types

Can be used with the char data type Unicode Collating Sequence

Java Programming: From Problem Analysis to Program Design, 3e 7

Page 8: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 8

Page 9: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

class String › Method compareTo› Method equals

Given string str1 and str2

Java Programming: From Problem Analysis to Program Design, 3e 9

str2str1 0

str2str1 0

str2str1 0

reTo(str2)str1.compa

string ifinteger an

string toequal is string if

string ifinteger an

Page 10: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

String str1 = "Hello";

String str2 = "Hi";

String str3 = "Air";

String str4 = "Bill";

String str5 = "Bigger";

Java Programming: From Problem Analysis to Program Design, 3e 10

Page 11: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 11

Page 12: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 12

Page 13: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 13

Page 14: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 14

Page 15: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 15

Page 16: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 16

Page 17: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 17

Page 18: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Definition: a process in which the computer evaluates a logical expression from left to right and stops as soon as the value of the expression is known

Java Programming: From Problem Analysis to Program Design, 3e 18

Page 19: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

One-Way Selection Two-Way Selection Compound (Block of) Statements Multiple Selections (Nested if) Conditional Operator switch Structures

Java Programming: From Problem Analysis to Program Design, 3e 19

Page 20: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Syntax:if (expression)

statement

Expression referred to as decision maker

Statement referred to as action statement

Java Programming: From Problem Analysis to Program Design, 3e 20

Page 21: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 21

Page 22: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Example 4-11//Program to determine the absolute value of an integer

import javax.swing.JOptionPane;

public class AbsoluteValue

{

public static void main(String[] args)

{

int number;

int temp;

String numString;

numString =

JOptionPane.showInputDialog

("Enter an integer:"); //Line 1

number = Integer.parseInt(numString); //Line 2

temp = number; //Line 3

Java Programming: From Problem Analysis to Program Design, 3e 22

Page 23: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

if (number < 0) //Line 4 number = -number; //Line 5

JOptionPane.showMessageDialog(null, "The absolute value of " + temp + " is " + number, "Absolute Value", JOptionPane.INFORMATION_MESSAGE); //Line 6 System.exit(0); }

Java Programming: From Problem Analysis to Program Design, 3e 23

Page 24: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Syntax:if (expression)

statement1

else

statement2 else statement must be paired with an if

Java Programming: From Problem Analysis to Program Design, 3e 24

Page 25: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 25

Page 26: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 26

Example 4-14

if (hours > 40.0) wages = 40.0 * rate + 1.5 * rate * (hours - 40.0); else wages = hours * rate;

Page 27: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 27

Example 4-15

if (hours > 40.0); //Line 1 wages = 40.0 * rate + 1.5 * rate * (hours - 40.0); //Line 2else //Line 3 wages = hours * rate; //Line 4

•Because a semicolon follows the closing parenthesis of the if statement (Line 1), the else statement stands alone •The semicolon at the end of the if statement (see Line 1) ends the if statement, so the statement at Line 2 separates the else clause from the if statement; that is, else is by itself •Since there is no separate else statement in Java, this code generates a syntax error

Page 28: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Syntax

Java Programming: From Problem Analysis to Program Design, 3e 28

Page 29: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

if (age > 18){ System.out.println("Eligible to vote."); System.out.println("No longer a minor.");} else{ System.out.println("Not eligible to vote."); System.out.println("Still a minor.");}

Java Programming: From Problem Analysis to Program Design, 3e 29

Page 30: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Syntax

if (expression1)

statement1

else if (expression2)

statement2

else

statement3

Else associated with most recent incomplete if

Multiple if statements can be used in place of if…else statements

May take longer to evaluate

Java Programming: From Problem Analysis to Program Design, 3e 30

Page 31: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Ternary operator Syntax

expression1 ? expression2 : expression3

If expression1 = true, then the result of the condition is expression 2; otherwise, the result of the condition is expression3

Java Programming: From Problem Analysis to Program Design, 3e 31

Page 32: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 32

Page 33: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 33

• In Java, switch, case, break, and default are reserved words

• In a switch structure, the expression is evaluated first

• The value of the expression is then used to perform the actions specified in the statements that follow the reserved word case

• The expression is usually an identifier • The value of the identifier or the expression can

be only integral, that is, an integer

Page 34: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Integral values also include values of type char

The expression is sometimes called the selector; its value determines which statements are selected for execution

A particular case value must appear only once One or more statements may follow a case label, so you do not need to use braces to turn multiple statements into a single compound statement

Java Programming: From Problem Analysis to Program Design, 3e 34

Page 35: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

The break statement may or may not appear after each statements1, statements2, ..., statementsn

A switch structure may or may not have the default label

Java Programming: From Problem Analysis to Program Design, 3e 35

Page 36: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 36

Page 37: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Java Programming: From Problem Analysis to Program Design, 3e 37

Page 38: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Example 4-24

switch (grade){case 'A': System.out.println("The grade is A."); break;

case 'B': System.out.println("The grade is B."); break;

case 'C': System.out.println("The grade is C."); break;

Java Programming: From Problem Analysis to Program Design, 3e 38

Page 39: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

case 'D': System.out.println("The grade is D."); break;

case 'F': System.out.println("The grade is F."); break;

default: System.out.println("The grade is invalid.");}

Java Programming: From Problem Analysis to Program Design, 3e 39

Page 40: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Input: customer’s account number, customer code, number of premium channels to which customer subscribes, number of basic service connections (in case of business customers)

Output: customer’s account number and the billing amount

Java Programming: From Problem Analysis to Program Design, 3e 40

Page 41: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Solution: › Prompt user for information› Use switch statements based on

customer’s type› Use an if statement nested within switch

statement to determine amount due by each customer

Java Programming: From Problem Analysis to Program Design, 3e 41

Page 42: Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how

Control structures are used to process programs

Logical expressions and order of precedence of operators are used in expressions

Compare strings If statements if…else statements switch structures Proper syntax for using control statements

Java Programming: From Problem Analysis to Program Design, 3e 42