1 / 19

Selection (if-then-else)

Selection (if-then-else). Programming Has 3 Types of Control: Sequential (normal) : Control of Execution Proceeds One after the Other Selection (if-then-else) : Control Proceeds Dependent on Conditions Iteration (looping) : Control Repeated until Condition Met. C++ if Statement Syntax.

edithf
Télécharger la présentation

Selection (if-then-else)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Selection (if-then-else) • Programming Has 3 Types of Control: Sequential (normal): Control of Execution Proceeds One after the Other Selection (if-then-else): Control Proceeds Dependent on Conditions Iteration (looping): Control Repeated until Condition Met

  2. C++ if Statement Syntax • Syntax if (condition)statement; • If Condition Is True, Statement Is Executed • If Condition Is False, Statement Is Not Executed • If Multiple Actions Are Required for Statement, a Compound Statement Must Be Used: if (condition) { statement; statement; }

  3. Conditional Operators • Relational Operators: < , > , >= , <= • Equality Operators: == , !=

  4. Selection Examples if (age < 30) cout << “You are very very Young” << endl; if (grade == ‘A’) cout << “Congratulations!” << endl; if (grade != ‘F’) cout << “You passed!” << endl;

  5. else Statement • Syntax: • if (condition) • { • statement(s);//condition true • } • else • { • statement(s);//condition false • }

  6. if-else Example • if (myGrade >= 60) • { • cout << “You passed!” << endl; • } • else • { • cout << “How about them Cubs?” << endl; • }

  7. Compound Statements • Compound Statement: One or More Statements within a Set of Curly Braces • Must Use Compound Statement if More than One Statement Is Supposed to be under Control of if or else Conditional • Include Curly Braces after if so if other Statements Are Added in Future, Curly Braces Are Already There

  8. Nested if Statements if (myGrade >= 80) if (myGrade >= 90) cout << “You have an A!” << endl; else cout << “You have a B!” << endl; else cout << “We’ll give you a C.” << endl;

  9. if/else (Cascaded) • Sequence of if/else Statements • Example: if (myGrade > 90) cout << “A!” << endl; else if (myGrade > 80) cout << “B!” << endl; else if (myGrade > 70) cout << “C!” << endl; else cout << “Oh-oh!” << endl;

  10. Boolean Type • A Boolean Value Is One of Either “True” or “False” • In C++, Type bool • Example: bool done = false; . . . if (currentLetter == ‘Z’) done = true; else done = false; … if (done) return(0); . . . • if/else Conditionals Must Evaluate to True or False, and Are Therefore Called Boolean Expressions • In C++, Any Non-Zero Value Is Considered True; Any Expression Evaluating to Zero Is Considered False

  11. Logical Operators • A Logical Operator Is One Used to Further Specify True or False in an Expression • Connects Two or More Expressions Together • && Is Logical “AND” • || Is Logical ‘OR” • &&: Both Operands Must Be True for Entire Expression to Be True • ||: Only One (or Both) of the Operands Must Be True for Entire Expression to Be True

  12. Logical Operators if (numStudents > MIN && numStudents < MAX) classRun = true; if (numStudents > MAX || numInstructors == 0) classRun = false;

  13. Operator Precedence • () • ! (not) • *, /, % • +, - • <, <=, >, >= (Relational Operators) • ==, != (Equality Operators) • && (Logical AND) • || (Logical OR) • = (ASSIGNMENT)

  14. Order of Operations • Precedence: Level of Importance of Operations Multiplicative Operators Have Higher Precedence than Additive Operators: *, /, % Higher +, - Lower • Associativity: Order of Operation for Equal Level Precedence Most Operators Have Left-to-Right Associativity Use Parentheses to Force Differing Precedence of Operations

  15. Multiple Logical Operators if ( num1 > MAX || num2 == 0 && num3 == 0) cout << “num1 is MAX or something is 0”; cout << “I think…..” << endl;

  16. Switch Statements • Also Called Switch/Case Statement • Just Case in Other Languages • Selects Among Several Different Actions • Can Only Select from Integer or Character • If an Integer Value Is Matched, Statements under Control of that Case Block Are Executed

  17. Switch/Case Example const double BASERATE = 104.50; double rate; int numPassengers; cout << “Enter Passengers: “; cin >> numPassengers; switch(numPassengers) { case 2: rate = BASERATE * 0.80; break; case 4: rate = BASERATE * 0.75; break; case 5: rate = BASERATE * 0.55; break; default: rate = BASERATE; break; }

  18. Switch Case Example char menuItem; cout << "Enter Menu Selection: "; cin >> menuItem; switch(menuItem) { case 'O': case ‘o': /* code to do ordering goes here*/ break; case 'C': case ‘c': /* code to do checkout goes here*/ break; default: cout << “Unknown option” << endl; break; }

  19. Announcements • Exam 1 Next Week in Lecture • Everything through Lab 4 • 50 minutes • 15 % of Total Grade • Covers Everything through Lecture this Week • Quiz 1 Topics (terminology, variables, constants, basics) • if-then-else • Compound statements • Relational operators • Logical operators • Switch/Case Statements

More Related