Presentation is loading. Please wait.

Presentation is loading. Please wait.

Chapter 6: More on the Selection Structure

Similar presentations


Presentation on theme: "Chapter 6: More on the Selection Structure"— Presentation transcript:

1 Chapter 6: More on the Selection Structure
Introduction to Programming with C++ Fourth Edition

2 Objectives Include a nested selection structure in pseudocode and in a flowchart Code a nested selection structure in C++ Recognize common logic errors in selection structures Introduction to Programming with C++, Fourth Edition

3 Objectives (continued)
Include the switch form of the selection structure in pseudocode and in a flowchart Code the switch form of the selection structure in C++ Format numeric output in C++ Introduction to Programming with C++, Fourth Edition

4 Nested Selection Structures
Selection structure within another selection structure Used when more than one decision must be made before the appropriate action can be taken Primary decision - always made by the outer selection structure Secondary decision - always made by the inner (nested) selection structure Introduction to Programming with C++, Fourth Edition

5 Nested Selection Structures (continued)
Introduction to Programming with C++, Fourth Edition

6 Nested Selection Structures (continued)
Introduction to Programming with C++, Fourth Edition

7 Logic Errors in Selection Structures
Logic errors are commonly made as a result of the following mistakes: Using a logical operator rather than a nested selection structure Reversing the primary and secondary decisions Using an unnecessary nested selection structure Introduction to Programming with C++, Fourth Edition

8 Logic Errors in Selection Structures (continued)
Introduction to Programming with C++, Fourth Edition

9 Logic Errors in Selection Structures (continued)
Test Data for Desk-Checking Data for first desk-check Status: F Years: 4 Data for second desk-check Years: 15 Data for third desk-check Status: P Years: 11 Introduction to Programming with C++, Fourth Edition

10 Results of Desk-Checking the Correct Algorithm
Introduction to Programming with C++, Fourth Edition

11 Using a Logical Operator Rather Than a Nested Selection Structure
One common error made when writing selection structures is to use a logical operator in the outer selection structure’s condition when a nested selection structure is needed Introduction to Programming with C++, Fourth Edition

12 Correct Algorithm and an Incorrect Algorithm Containing the First Logic Error
Introduction to Programming with C++, Fourth Edition

13 Results of Desk-Checking the Incorrect Algorithm
Introduction to Programming with C++, Fourth Edition

14 Reversing the Primary and Secondary Decisions
Common error: putting the secondary decision in the outer selection structure, and putting the primary decision in the nested selection structure Introduction to Programming with C++, Fourth Edition

15 Correct Algorithm and an Incorrect Algorithm Containing the Second Logic Error
Introduction to Programming with C++, Fourth Edition

16 Results of Desk-Checking the Incorrect Algorithm
Introduction to Programming with C++, Fourth Edition

17 Using an Unnecessary Nested Selection Structure
In most cases, a selection structure containing this error still produces the correct results However, it is less efficient than selection structures that are properly structured Introduction to Programming with C++, Fourth Edition

18 Correct Algorithm and an Inefficient Algorithm Containing the Third Logic Error
Introduction to Programming with C++, Fourth Edition

19 Results of Desk-Checking the Inefficient Algorithm
Introduction to Programming with C++, Fourth Edition

20 Using the if/else Form to Create Multiple-Path Selection Structures
Introduction to Programming with C++, Fourth Edition

21 Two Versions of the C++ Code for the Grade Problem
Introduction to Programming with C++, Fourth Edition

22 Two Versions of the C++ Code for the Grade Problem (continued)
Introduction to Programming with C++, Fourth Edition

23 Using the switch Form to Create Multiple-Path Selection Structures
Introduction to Programming with C++, Fourth Edition

24 Using the switch Form Switch statement:
Begins with switch followed by an open brace Ends with a closing brace Switch clause - keyword switch followed by a selectorExpression enclosed in parentheses selectorExpression – Can contain any combination of variables, constants, functions, methods, and operators Must result in a bool, char, short, int, or long Introduction to Programming with C++, Fourth Edition

25 Using the switch Form (continued)
Each clause in the switch statement contains a value followed by a colon Data type of the value should be compatible with the data type of the selectorExpression Break statement - tells the computer to leave (“break out of”) the switch statement at that point Introduction to Programming with C++, Fourth Edition

26 Formatting Numeric Output
Use setiosflags stream manipulator to display a program’s numeric output in fixed-point notation only Must use #include <iomanip> directive and using std::ios; and using std::setiosflags; Use setprecision to control the number of decimal places displayed Introduction to Programming with C++, Fourth Edition

27 Formatting Numeric Output (continued)
Introduction to Programming with C++, Fourth Edition

28 Formatting Numeric Output (continued)
Introduction to Programming with C++, Fourth Edition

29 Summary Nested selection structure:
Selection structure within another selection structure Used when more than one decision must be made before the appropriate action can be taken Three common logic errors in selection structures Logic errors are commonly made as a result of the following mistakes: Using a logical operator rather than a nested selection structure Reversing the primary and secondary decisions Using an unnecessary nested selection structure Introduction to Programming with C++, Fourth Edition

30 Summary (continued) The switch form of the selection structure is often simpler to use if there are many paths from which to choose Format output using stream manipulators Introduction to Programming with C++, Fourth Edition


Download ppt "Chapter 6: More on the Selection Structure"

Similar presentations


Ads by Google