Decisions Given hours worked and pay rate, calculate total pay

Slides:



Advertisements
Similar presentations
Chapter 4: Making Decisions.
Advertisements

Chapter 4 Control Structures I. Objectives ► Examine relational and logical operators ► Explore how to form and evaluate logical (Boolean) expressions.
CONTROL STRUCTURES: SEQUENTIAL, SELECTIVE, AND REPETITIVE
Switch structure Switch structure selects one from several alternatives depending on the value of the controlling expression. The controlling expression.
If Statements. COMP104 If / Slide 2 Three Program Structures * Sequence - executable statements which the computer processes in the given order * Choice.
Use Precedence Chart int number ; float x ; number ! = 0 && x < 1 / number / has highest priority < next priority != next priority && next priority What.
Multi-alternative Selection Both the if clause and the else clause of an if...else statement can contain any kind of statement, including another selection.
Single selection syntax if ( expression ) { statements; } TRUE FALSE expression if clause 1. Statemens are executed when expression is true 2. { } can.
Control Structures Control structures control the flow of program execution. 3 types of control structures: sequence, selection.
Java Programming: From Problem Analysis to Program Design, 4e Chapter 4 Control Structures I: Selection.
Chapter 5 Conditions, Logical Expressions, and Selection Control Structures Dale/Weems/Headington.
Control Structures I (Selection)
Control Structures special statements whose purpose is to change the order of execution in a program. Sequential structures – Statements executed sequentially.
Chapter 4 Logical Expressions & If-Else. 2 Overview  More on Data Type bool u Using Relational & Logical Operators to Construct & Evaluate Logical Expressions.
Chapter 4: Control Structures I J ava P rogramming: From Problem Analysis to Program Design, From Problem Analysis to Program Design, Second Edition Second.
Lecture 5 Selection Control Structures Selection Control Structures Dr. Hebbat Allah A. Elwishy Computer & IS Assistant Professor
More on Input Output Input Stream : A sequence of characters from an input device (like the keyboard) to the computer (the program running). Output Stream.
Chapter 4: Control Structures I J ava P rogramming: From Problem Analysis to Program Design, From Problem Analysis to Program Design,
CPS120: Introduction to Computer Science Decision Making in Programs.
Chapter 4 Selection Structures: Making Decisions.
Additional Control Structures. Chapter 9 Topics Switch Statement for Multi-way Branching Do-While Statement for Looping For Statement for Looping Using.
COSC175-Selection1 Decisions Given hours worked and pay rate, calculate total pay What if you work overtime? How do you indicate if your work overtime?
1 Chapter 9 Additional Control Structures Dale/Weems.
1 COMS 261 Computer Science I Title: C++ Fundamentals Date: September 21, 2005 Lecture Number: 10.
 Learn about control structures  Examine relational and logical operators  Explore how to form and evaluate logical (Boolean) expressions  Learn how.
Copyright 2003 Scott/Jones Publishing Making Decisions.
Chapter 7 Selection Dept of Computer Engineering Khon Kaen University.
Chapter 5 Conditions, Logical Expressions, and Selection Control Structures Dale/Weems.
PEG200/Saidatul Rahah 1.  Selection Criteria › if..else statement › relational operators › logical operators  The if-then-else Statement  Nested if.
Input a number #include using namespace std; int main() { int num; cout num; return 0; }
Java Programming: From Problem Analysis to Program Design, 3e Chapter 4 Control Structures I: Selection.
Chapter 4 Control Structures I. Chapter Objectives Learn about control structures Examine relational and logical operators Explore how to form and evaluate.
Chapter 5: Control Structures I (Selection). Objectives In this chapter you will: Learn about control structures Examine relational and logical operators.
1 CS161 Introduction to Computer Science Topic #8.
1 Programming in C++ Dale/Weems/Headington Chapter 9 Additional Control Structures (Switch, Do..While, For statements)
Chapter 4, cont: Control Structures if else nested if switch.
CPS120: Introduction to Computer Science Decision Making in Programs.
C++ Programming Control Structures I (Selection).
Chapter 5 Topics Data Type bool
If/Else Statements.
Chapter 3 Selection Statements
Java Fundamentals 4.
Chapter 4: Control Structures I (Selection)
Chapter 4: Control Structures I
Chapter 3 Control Statements
Chapter 4: Control Structures I
Chapter 4: Making Decisions.
EGR 2261 Unit 4 Control Structures I: Selection
Relational Operators A relational operator compares two values. The values can be any built-in C++ data type, such as Character Integer Floating point.
DKT121: Fundamental of Computer Programming
Chapter 4: Making Decisions.
SELECTION STATEMENTS (1)
Control Structures – Selection
Decisions Given hours worked and pay rate, calculate total pay
Chapter 4: Control Structures I
Chapter 4: Control Structures I (Selection)
Topics Data Type bool Using Relational and Logical Operators to Construct and Evaluate Logical Expressions If-Then-Else Statements If-Then Statements Nested.
Additional Control Structures
Flow Control Statements
Chapter 4 Selection.
Chapter 4: Control Structures I (Selection)
© Copyright 2016 by Pearson Education, Inc. All Rights Reserved.
Control Structure Chapter 3.
Week 3 – Program Control Structure
Structured Program Development in C++
Control Statements Paritosh Srivastava.
The switch Statement When we want to compare a variable against several values to see which one it has, we can use the switch statement: switch (status)
Selection Control Structure
Control Structure.
Presentation transcript:

Decisions Given hours worked and pay rate, calculate total pay What if you work overtime? How do you indicate if your work overtime? How about double overtime? COSC175-Selection

Relational Operators < less than <= less than or equal to > greater than >= greater than or equal to == equals != not equal to COSC175-Selection

Examples 10 > 2 'a' < 'c' Why is this true? x != y temp > humidity num == 35 initial != ‘Q’ COSC175-Selection

Logicals: AND && OR || NOT ! COSC175-Selection

Examples 1. if ((sex == 'F') && (city_code == 18) && (gpa >= 3.7)) cout << "Merit Award" << endl; 2. if ((zip == "48002") || (zip == "48003") || (zip == "48004")) cout << "LOCAL“ << endl; COSC175-Selection

“Short-Circuit” Evaluation 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 one True in || -> True one False in && -> False Example: int age; int height; age = 25; height = 70; ((age > 50) && (height > 60)) 2. ((height > 60) || (age > 40))

Selection/Decision Test – true or false One operation performed if true One operation performed if false Keywords if, else COSC175-Selection

if Syntax if ( Expression ) statement NOTE: statement can be a single statement, a null statement, or a compound statement. COSC175-Selection

if statement is a selection of whether or not to execute a statement (which can be a single statement or an entire block) TRUE expression FALSE statement COSC175-Selection

Examples if (taxCode == ‘T’ ) price = price + taxRate*Price; 2. if (num < 0 ) { // compound statement cout << "Negative" << endl; numNegs = numNegs + 1; } 3. if (age < 21 ) cout << "Under Age" COSC175-Selection

if-else Syntax NOTE: StatementA and StatementB each can be if ( Expression ) StatementA else StatementB NOTE: StatementA and StatementB each can be a single statement a null statement, or a compound statement. COSC175-Selection

if..else provides two-way selection between executing one of 2 clauses (the if clause or the else clause) TRUE FALSE expression if clause else clause COSC175-Selection

int carDoors, driverAge; float premium, monthlyPayment; . . . if ( (carDoors == 4 ) && (driverAge > 24) ) { premium = 650.00 cout << "LOW RISK “ << endl; } else premium = 1200.00 cout << “ HIGH RISK ” << endl; monthlyPayment = premium / 12.0 + 5.00; COSC175-Selection

Example Input Process Output temp Input temp, units newTemp units Convert temperature from fahrenheit to celsius or from celsius to fahrenheit based on C or F Input Process Output temp Input temp, units newTemp units Convert temperature Output newTemp COSC175-Selection

code int main() { float temp; float newTemp; char units; cout << " Enter temperature and C or F" cin >> temp >> units; if (units == 'F') newTemp = (5 * (temp – 32) )/9; cout << temp<< "Degrees F = " <<newTemp<<" Degrees C“; } else newTemp = ((9 * temp)/5) + 32; cout << "Degrees C = " << newTemp << " Degrees F“ << endl; } // end main COSC175-Selection

Exercises: Write the statements that allow you to input a number and prints whether it is positive or negative. Write the statements necessary to input the price of apples and the price of oranges. Then print either "THE APPLES COST MORE" or "THE ORANGES COST MORE. How would you handle the situation where the cost was the same? Write the statements that allow you to input a number and prints whether it is odd or even. COSC175-Selection

Nested selection - Example if (hrsWorked <= 40 ) totPay = hrsWorked * payRate; else { regPay = 40 * payRate; if (hrsWorked <= 60) otPay = (hrsWorked – 40) * (1.5 * payRate); totPay = regPay + otPay; } otPay = 20 * (1.5 * payRate); doubleOtPay = (hrsWorked – 60) * (2 * payRate); grossPay = regPay + otPay + doubleOtPay; COSC175-Selection

Writing a nested if statement as a Multiple-Alternative Decision if (x > 0) cout << “Positive” << endl; else if (x < 0) cout << “Negative” << endl; cout << “Zero” << endl; if (x > 0) cout << “Positive” << endl; else if (x < 0) cout << “Negative” << endl; else cout << “Zero” << endl; COSC175-Selection

Why is italicized code not necessary? cin >> testGrade if (testGrade >= 90) letterGrade = ‘A‘; else if (testGrade >= 80) && testGrade < 90 letterGrade = 'B‘; else if (testGrade >= 70) && testGrade < 80 letterGrade = 'C‘; else if (testGrade >= 60) && testGrade < 70 letterGrade = 'D‘; else if testGrade < 60 letterGrade = 'F‘; Why is italicized code not necessary? COSC175-Selection

cin >> testGrade if (testGrade >= 90) letterGrade = 'A‘; else if (testGrade >= 80 ) letterGrade = 'B‘; else if (testGrade >= 70 ) letterGrade = 'C‘; else if (testGrade >= 60 ) letterGrade = 'D‘; else letterGrade = 'F‘; COSC175-Selection

Nested if Statements if ( Expression1 ) Statement1 else if ( Expression2 ) Statement2 . else if ( ExpressionN ) StatementN else Statement N+1 EXACTLY 1 of these statements will be executed. COSC175-Selection

Multi-way Branching if ( creditsEarned >= 90 ) cout << “SENIOR STATUS “; else if ( creditsEarned >= 60 ) cout << “JUNIOR STATUS “; else if ( creditsEarned >= 30 ) cout << “SOPHOMORE STATUS “; else cout << “FRESHMAN STATUS “; COSC175-Selection

Use nested logic rather than straight thru logic if (age < 16) charge = 7; if ((age >= 16) && (age < 65)) charge = 10; if (age >= 65) charge = 5; if (age < 16 ) charge = 7; else if ((age >= 16) && (age < 65)) charge = 10; else if (age >= 65 ) charge = 5; COSC175-Selection

Testing Selection Control Structures to test a program with branches, use enough data sets so that every branch is executed at least once this is called minimum complete coverage COSC175-Selection

Dangling else else matches nearest unmatched if if (animal == “dog”) if (weight > 40) cost = 15; else cost = 10; if (animal == “dog”) if (weight > 40) cost = 15; else cost = 10; COSC175-Selection

switch Use for multiple tests of one variable switch (selector) { case label1: statement 1 case label2: statement 2 .. case label n: statement n default: statement e } Evaluation: The selector expression is evaluated and compared to each of the case labels. Each labeli is a list of one or more possible constants, separated by commas. Only one statement will be executed. Control is then passed to the first statement following the end of the case. Each statement may be a single or compound statement. COSC175-Selection

Example cin >> menuOpt; switch (menuOpt) { case 1: cout << "Beginners“; break; case 2: cout << "Advanced Beginner“; case 3: cout << "Intermediate“; default: cout << "Invalid Option“ } //END CASE COSC175-Selection

Example cin >> menuOpt; switch (menuOpt) { case 1: case 2: cout << “Buckle my shoe“; break; case 3: case 4: cout << “Shut the door“; case 5: case 6: cout << “Pick up stickse“; default: cout << "Invalid Option“ } //END CASE COSC175-Selection