330 likes | 400 Views
Chapter 4 October 22, 2013. The If Statement. Programs make decisions If(condition){ Statement(s); } Condition boolean expression Evaluates to either true or false formed using relational operators. The If Statement. Operator Meaning = = equal to < less than
E N D
Chapter 4 October 22, 2013
The If Statement • Programs make decisions • If(condition){ Statement(s); } • Condition • boolean expression • Evaluates to either true or false • formed using relational operators
The If Statement Operator Meaning • = = equal to • < less than • <= less than or equal to • > greater than • >= greater than or equal to • != not equal to
The If Statement • Statement • single or complex • Directions on what to do • Pitfalls • do not use = = or ! = with decimals • roundoff errors • occur because doubles cannot be exactly represented in binary
The If Statement • Only compare values of the same type • Do not confuse assignment (=) with equal to (==). • Will compile but output will vary • Misplaced semicolons • if(score ==21);
If-Else Statement • Contains an else clause • Excuted when if is false • If(condition){ statement(s); } else{ statement(s); }
Compound Statements • More than one statement enclosed in { } • Ex: if(temp > 5){ cout<<“Wear a coat!”<<endl; cout<<“It is cold outside”<<endl; } Nested if Statements • Controls flow in 3 or more situations • if statement within an if statement
Nested if Statements • If statement within an if statement • If(condition){ if(condition){ statement(s); } } • Ex: if(temp < 5){ if(temp< 2){ cout<<“Wear a coat”<<endl; } }
Nested if Statements • Dangling else • A logic error associated with nested if statements • reason we use brackets • clarify and group Ex: if(temp < 5) if(temp< 2) cout<<“Wear a coat”<<endl; else cout<<“It’s hot”<<endl;
Else-if Ladder • Decides between three or more actions • order of if and else is very important • Last statement is executed iff the statements before ALL fail. • Ex: if(temp < 0) else if (temp< 2) else if (temp < 4) else
Else-if Ladder if(condition){ statement(s); } else if(condition){ statement(s); } else{ }
Logical Operators • Used to form Boolean expressions • && represents and • | | represents or • Evaluated based on the following rules
Logical Operators &&- AND True/False Operator T/F Expressions T && T T T && F F F && T F F && F F
OR –If example • If((condition) | | (condition)){ statement(s); } If((temp < 10) | | (wind> 20 )){ cout<<“It’s really cold!!”<<endl; }
AND –If example • If((condition) && (condition)){ statement(s); } If((temp < 10) && (wind> 20 )){ cout<<“It’s too cold to be outside”; cout<< endl; }
Looping • Control program through iteration • Repeat one or more statements • Referred to as looping
Do-while • do { statement(s); }while(condition); • Condition • Boolean expression • Determines if loop continues
Do-while • executed at least once • condition executed after first loop • if condition is true then statements are executed again and condition is reevaluated.
while Statements • evaluates before each loop • Can be executed 0 or more times • while(condition){ statement(s); } • if the condition is true then the statements are executed and the condition is reevaluated until condition is false.
Infinite loops • Continue FOREVER • Causes • misplaced semicolons • missing curly brackets • logic errors
Algorithms • series of steps that tell how to solve a problem • usually written out first • helps with structure of code • helps eliminate logic errors • caused by statements that are syntactically correct but produce undesired results
Counting and Summing • Counting • counts the number of values entered by the user • really counts number of loops • numOfValues = numOfValues + 1; • takes values currently in variable, adds one to it and re-stores that sum in the original variable.
Counting and Summing • Counting • counters • variables that count • need to be initialized • gives it a starting value; usually 0 • int i = 0;
Counting and Summing • Summing • sums the values entered by a user • sumOfValues = sumOfValues + value; • takes value currently stored and adds the new value and re-stores it back in sumOfValues • needs to be initialized • usually zero.
Counting and Summing • Sentinel • constant • value the loop should end on • Easily changed
Increment and Decrement • ++ • after a variable indicates addition of 1 • numOfValues++; • adds one and re-stores new value in numOfValues • increment operator • Where C++ came from
Increment and Decrement • += • adds a value to a sum • sumOfValues +=Value; • adds value to sumOfValues • stores new value in sumOfValues.
Increment and Decrement • -- • subtraction of 1 from variable • total --; • subtracts 1 from total • stores back in total • - = • subtracts a value from a total • total -=value; • subtracts value from total • Stores new value in total
The for Statment • executes a loop for a fixed number of times • for(initialization; condition; increment){ statement(s); } • initialization • performed once • type counter = startingPoint; • int x = 0;
The for Statement • Condition • Boolean Expression • Evaluated before each loop • increment • performed after each loop • Advances the counter
The for Statement • Initialization can be performed outside the loop • ex: int x = 0; for(; condition; increment){ statement(s); }
#include <iostream> using namespace std; int main() { for ( int x = 0; x < 10;x++) { cout<< x <<endl; } }
The bool Library • Boolean variables only hold true or false • library used to implement bool type • #include<bool> using namespace std; • bool Tuesday = false; • no quotations marks