COMP 14 Introduction to Programming Miguel A Otaduy May 20 2004 Writing Selection Statements What Type of Construct To Use Only need to execute additional statements if condition is true if Need to execute separate additional statements based on if the condition is true or false if else Need to execute different statements based on multiple conditions nested if else Need to execute different statements based on an expression that evaluates to a char or int switch Writing Selection Statements Write the outline of the selection statement keywords curly braces case and break statements for switch Write the expression boolean expression or condition expression or variable evaluating to char or int Write statements that execute based on the condition Example Write a selection statement that sets grade to F if score is less than 60 and sets grade to P if score is greater than or equal to 60 1 Choose construct if else 2 Write outline if else Example Write a selection statement that sets grade to F if score is less than 60 and sets grade to P if score is greater than or equal to 60 3 Add condition if score 60 else 4 Add statements if score 60 grade F else grade P Questions What type of selection statement should be used 1 Print Male if gender is M and Female if gender is F if else 2 Print the state associated with areaCode where areaCode is an int switch 3 Print the maximum of three integers nested if else Question Assume that the lengths of 3 sides of a triangle are given in the integer variables side1 side2 and side3 Write code that will print Equilateral if all three sides are equal Isosceles if only two sides are equal Scalene if no sides are equal equilateral isosceles scalene First what selection construct should be used nested if else Answer side1 side2 and side3 are lengths of the sides of a triangle if side1 side2 side2 side3 side1 side3 no sides are equal System out println Scalene else if side1 side2 side2 side3 all sides are equal System out println Equilateral else two sides are equal System out println Isosceles Today Repetition statements while loops for loops Why Is Repetition Needed Want to add 5 integers to find their average declare a variable for each integer initialize the sum read in the user input one at a time sum the numbers take the average Want to add 1000 integers to find their average 1 2 3 4 5 declare one variable for input initialize the sum read in one line of user input add to the sum repeat steps 3 and 4 take the average 1000 times Repetition Statements Allow us to execute a statement multiple times Often referred to as loops Controlled by boolean expressions like selection or conditional statements Java has three kinds of repetition statements the while loop the for loop the do loop Loops Must use a loop control variable controls how many times to loop 4 Parts to Every Loop initialization set loop control variable before condition condition when to stop update change the loop control variable body actions to repeat Typical Uses of Loops Repeat a section of code a specified number of times counter controlled Repeat a section of code reading input until a specific value is read sentinel controlled Repeat a section of code reading input until a valid value is entered input validation Repeat a section of code reading from a file until the end of the file is reached EOFcontrolled Repeat a section of code until a boolean variable becomes false flag controlled The while Loop Syntax while condition while is a reserved word loop body If the condition is true the loop body is executed Then the condition is evaluated again The loop body is executed repeatedly until the condition becomes false The while Loop Syntax while expression statement Expression is always true in an infinite loop Statements must change value of expression to false The while Loop Example final int LIMIT 3 int count 0 initializatio n count LIMIT while boolean condition System out println count count loop body update System out println All done Output 0 1 2 All done The while Loop What s Going On final int LIMIT 3 int count 0 LIMIT count 3 0 1 while count LIMIT 2 System out println count Output 3 count 0 1 2 System out println All done All done The while Loop final int LIMIT 3 int count 0 while count LIMIT count System out println count Output 1 2 3 All done System out println All done The while Loop final int LIMIT 3 int count 0 while count LIMIT System out println count System out println All done Output 0 0 0 0 0 0 0 0 0 0 The while Loop final int LIMIT 3 int count 0 while count LIMIT System out println count count System out println All done Output 0 1 2 3 All done The while Loop If the condition of a while statement is false initially the loop body is never executed The body of a while loop will execute zero or more times Counter Controlled while Loop Used when we know exactly the number of times to execute the loop Basic Form counter 0 while counter N counter N is the number of times the loop should execute Example final int NUM STUDENTS 100 int sum 0 double average int i 0 initialize loop control var Often we use i j k as counter variable names while i NUM STUDENTS sum Integer parseInt inFile readLine i update loop control variable average double sum NUM STUDENTS Reading From a File How do you know how many items there will be 1 ask the user 2 arrange the data file so that the first item is the number of items in the file Other ways to read all of the items use sentinel value read until end of file EOF Sentinel Controlled while Loop Used when exact number of entry pieces is unknown but last entry special sentinel value is known Basic Form input the first data item into variable while variable sentinel input a data item into variable Example int i 0 sum 0 score final int SENTINEL 99 double average initialize the loop control variable score Integer parseInt inFile readLine while score SENTINEL sum score update the loop control variable score Integer parseInt inFile readLine average double sum NUM STUDENTS Average java Example Read in integers and print their sum until the user enters 0 Print the average of the numbers entered Input Validation while Loop Used to ensure that the user enters valid input Basic Form input the first data item into variable while variable is not in valid range ask the user for valid input input a data item into variable Example int num initialize loop control variable System out print Enter a number 0 100 num Integer parseInt keyboard readLine while num 0 num
View Full Document