0% found this document useful (0 votes)
41 views

Chapter 3 - C++ Handout

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
41 views

Chapter 3 - C++ Handout

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 55

Chapter Three

Control Statements

By: Sinodos G.

1
Outline
• Introduction

• Selection Statements

• Iteration Statements

• Jump Statements

2
Introduction
 Control statements alter the flow of the program, the
sequence of statements that are executed in a program.
 They act as "direction signals" to control the path of a
program.
 Used to cause the flow of control to advance and branch
based on changes to the state of a program.

 C++ control statements are categorized in to three.


Control Statements

Selection Stat.
Iteration Stat.
Jump Statements
Selection Statements
 It is also called as a decision making statements.
 It allows the code to execute a statement or block of
statements conditionally.
 one or more conditions to be evaluated or tested by the
program
 There are two types of decisions statements in C++:
Selection Statements

If Statements

Switch Statements
If Statement
 An if statement consists of a Boolean expression followed
by one or more statements.
 Syntax:
if (expression) {
statement;
}
rest_of_program;
 expression must evaluate to a boolean value, either true or
false
 If expression evaluates to true then the block of code inside
the if statement will be executed.

 If expression evaluates to false, the first set of code after the


end of the if statement will be executed.
Cont’d …
• There are four types of if statements in C++. These are
If Statements

Simple if

If else

If else Ladder

Nested If

6
If Statement
• The if decision statement executes a statement only if
an expression is true

Syntax:

if (expression) {
statement1;
}
rest_of_program

• The statements will be


evaluated if the value of the
condition is true.
Fig. 1 If Statement Flow Diagram

7
Example 1:
int main(){
int x = 10;
if( x < 20 ) {
cout<<“The first C++ control program ";
getch();
}
Out put: The first C++ control program
Example 2:
int main(){
int a = 10, b=20;
if (a > b) {
cout<<”a is greater than b “;
getch();
Out put:
}
8
Exercise
 Write a program to check a student is passed or not.

 Write a program to display “you are adult” when age


is greater than 20.

9
If-Else Statement
• If-else followed by an optional else statement, which
executes when the Boolean expression is false.
if (expression) {
statement1;
}
else{
statement2;

}
next_statement;
• If the expression is true, statement1 is executed and
then next_statement is executed.

• If expression is false, statement2 is executed and


then next_statement is executed.
Cont’d …
 If the boolean expression evaluates to true, then the if
block of code will be executed, otherwise else block of
code will be executed.

Syntax:
if (expression){
statement1;
} else {
statement2;
}
rest_of_program

11
Example: if-else
int main(){
int x = 30;
if(x < 20) {
cout<<“This is if statement";
}else {
cout<<"This is else statement";
}
}

Exercise:
Write a program using if-else statement that displays DDIT
Student fixed grade system.
12
Nested if statement
 It is refer to the else if statement inside another if or else
if statement.
 A nested if is an if statement that is the target of another
if or else.
 Nested ifs are very common in programming.
Syntax:
if(Boolean_expression 1) {
// Executes when the Boolean expression 1 is true

if(Boolean_expression 2) {
// Executes when the Boolean expression 2 is true
}
}
13
Cont’d …
Example1:

14
If-else-if ladder Statement
 The if-else-if statement (if else ladder) executes one
condition from multiple statements.
 An if statement can be followed by an optional else
if...else statement.
 very useful to test various conditions using single if...else
if statement.

 Used when:
• An if can have zero or one else's and it must come after any
else if's.
• An if can have zero to many else if's and they must come
before the else.
• Once an else if succeeds, none of the remaining else if's or
else's will be tested.
15
Cont’d …
 Syntax:
if(condition1){
Statement 1
}
else if(condition2{
Statement 2
}
else if(condition3){
Statement 3
}
...
else{
Statement n
}
16
Cont’d …
int main(){
int x = 30;
if( x == 10 ) {
cout<<“Value of X is 10";
}else if( x == 20 ) {
cout<<“Value of X is 20";
}else if( x == 30 ) {
cout<<“Value of X is 30";
}else {
cout<<“This is else statement";
}}
}
17
Exercise:

 Write a program that displays grade of a student using


fixed scale system.

 Write a code that accepts three integer values from the


user then it displays:
• the maximum integer number
• The minimum integer number

 Write a program to display days of a week using if else


if ladder.

18
Switch Statements

What is switch?

• allows a variable to be tested for equality against a list of


values.
• Each value is called a case, and the variable being
switched on is checked for each case.
• You can have any number of case statements.
19
Cont’d …
• The switch statement enables you to test several cases
generated by a given expression.
• allows a variable to be tested for equality against a list of
values.
• Each value is called a case, and the variable being switched
on is checked for each case.
• You can have any number of case statements.

 Syntax:
switch(expression) {
case value :// Statements
break; // optional
case value : // Statements
break; // optional
default : // Optional
}
Cont’d …
• When a break
statement is reached,
the switch terminates,
and the flow of
control jumps to the
next line following the
switch statement.

• If no break appears,
the flow of control
will fall through to
subsequent cases until
a break is reached.

21
Example: 1
int main(){ case 'D' :
// char grade = args[0].charAt(0); cout<<"You passed";
char grade = 'C'; case 'F' :
switch(grade) { cout<<"Better try again";
case 'A' : break;
cout<<"Excellent!"; default :
break; cout<<"Invalid grade";
case 'B' : }
case 'C' : Cout<<"Your grade is " << grade);
cout<<"Well done"; }
break; }

22
Exercise
 Write a program to display days of a week using switch
statement

 Write a program to perform the arithmetic operations


using switch

 Write a program that display the name of the day


using a day value.

 Write the above program when input is from a user.

23
Iteration Statements
What is Iteration Statements?

 Also known as a looping statements.

 to execute a block of code several number of times


 It allows to you to execute a statement or block of
statements repeatedly.
24
Cont’d …
• Executes a block of statements when a particular
condition is true

Advantage of looping statement


 Reduce length of Code

 Take less memory space.

 Burden on the developer is reducing.

 Time consuming process to execute the program is


reduced.

25
Cont’d …
 There are three types of loops in C++:
 for loops
 while loops
 do-while loops

• Conditional statement executes only once where as


looping statements executes repeatedly several
number of time.

26
for loop
 allows you to efficiently write a loop that needs to be
executed a specific number of times.
 useful when you know how many times a task is to be
repeated.
 for loop is used to iterate a part of the program several
times.
 If the number of iteration is fixed, it is recommended to
use for loop.

 For loop contains 3 parts Initialization, Condition and


Increment or Decrements

27
Cont’d …
Syntax:
for ( initialization; condition; increment ){
statement(s);
}

How for loop works:

28
Cont’d …
Explanation:
 The initialization step is executed first, and only once.
• This allows you to declare and initialize variables.
• Not required to put a statement here, as long as a semicolon
appears.

 Next, the condition is evaluated.


• If it is true, the body of the loop is executed.
• If it is false, the body of the loop does not execute and flow
of control jumps to the next statement

 Increment/ decrement
• This statement allows you to update variables.

29
Example:
Write a program that display “Hello Ethiopia” 6 times using
for loop.

30
Cont’d …
 For loop allows you to
efficiently write a loop
that needs to be
executed a specific
number of times.

 A for loop is useful when


you know how many
times a task is to be
repeated.

31
Cont’d …
 If there is more than one variable to set up or increment they
are separated by a comma.
for(i=0, j=0; i*j<100;i++,j+=2){
cout<<(i * j);
}
 You do not have to fill all three control expressions but you
must still have two semicolons.
int n = 0;
for(; n <= 100;){
cout<<(++n);
} Example:
 Example 1:
What will this for loop do?  Example: 2
What will this for loop do?

Solution
Solution
Prints out each integer from 0 to 999, 1+2+3+4+5+6+7
correctly labeling them even or odd + 8 + 9 + 10 = 55
While Loop
 This while loop executes as long as the given logical
expression between parentheses is true.
 When expression is false, execution continues with the
statement following the loop block.
Syntax:
while (expression){
statement;
}
 The expression is tested at the beginning of the loop, so if it
is initially false, the loop will not be executed at all.
 if the boolean_expression result is true, then the actions
inside the loop will be executed. This will continue as long
as the expression result is true.
Cont’d … Example:

1+2+3+4+5+6+7+8
+ 9 + 10 = 55
35
Cont’d …
Output
Example2:
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19
36
Questions
 Write a C++ program for the following
Questions.

 Display sum of numbers between 200 and


300

 Display all even numbers between 400 and


600.

 Write
a program that display sum of 20
consecutive numbers input from a user

37
do … while
 It is similar to a while loop, except that a do...while loop
is guaranteed to execute at least one time.

Syntax:
do {
// Statements
}
while(Boolean_expression);

38
Cont’d …
 The do…while repetition statement is similar to the while
statement.

 In the while, the program tests the loop-continuation


condition at the beginning of the loop, before executing
the loop’s body; if the condition is false, the body never
executes.

 The do…while statement tests the loop-continuation


condition after executing the loop’s body.

 therefore, the body always executes at least once. When a


do…while statement terminates, execution continues with
the next statement in sequence.
39
Cont’d …
Example1
Output
value of x : 10
value of x : 11
value of x : 12
value of x : 13
value of x : 14
value of x : 15
value of x : 16
value of x : 17
value of x : 18
value of x : 19

40
Questions
 Write a C++ program for the following
Questions.

 Display sum of numbers between 300 and


100

 Display all even numbers between 600 and


300.

41
Jump Statements
 Also known as a loop control statements

 Loop control statements change execution from its


normal sequence.

 When execution leaves a scope, all automatic objects


that were created in that scope are destroyed.
Jump Statements

Continue Statement

Break Statement

Return Statement
42
Continue Statements
 The continue keyword can be used in any of the loop
control structures.
 It causes the loop to immediately jump to the next
iteration of the loop.

 In a while loop or do/while loop, control immediately


jumps to the Boolean expression.
 The continue statement causes the program to jump to
the next iteration of the loop.

 Performs continue running the loop, but stop processing


the remainder of the code in the body of loop, to the
loops end.
43
Cont’d …
Syntax: Example:

44
Questions
 For the following Questions write a program using
break continue statement.

A. Display all numbers between 200 and 300, with


out 167 and 187

B. Display numbers starting from 20 up to 120 but


exclude all numbers divisible by 7.

45
Break Statement
 It uses the break keyword in the given looping
statements.
 in C++ programming language it has the following two
usages.
• When the break statement is encountered inside a loop,
the loop is immediately terminated and the program
control resumes at the next statement following the loop.

• It can be used to terminate a case in the switch statement


(covered in the next chapter).

46
Cont’d …
Example:

47
Questions
 For the following Questions write a program using
break break statement.

A. Display all numbers between 200 and 300, with


out 167 and 187

B. Display numbers starting from 20 up to 120 but


exclude all numbers divisible by 7.

48
goto Statement
 used in many programming languages for moving back
and forth in the program.

 using goto statement one needs to put in a label.

 the jump is to be executed we simply code as goto


name_of_label as illustrated below.

statements;
Syntax: goto name_of_label ; //code at point of jump
----------------
statements;
name_of_label : //code at destination of jump
-----------------
statements;
49
Cont’d …
 At the destination, the label name is put at the start of
line and it has to be followed by colon ( : ).

 Any other statement is put on right side of colon or in


next line.

 In the following program we have put the label name as


Again. So at the point of jump the statement is written
as goto Again;

 At the destination it is Again: . The following program


illustrates the application of goto statement for iteration.

50
Example

51
Nested loops
 A repetition structure that contains one or more loops in
its body.

 In every repetition of the outer loop the inner loops are


completely executed.

 A loop contained in another loop forms a doubly


nested loop.

 A doubly nested loop can be placed inside another loop


to form triply nested loop, and so on.

 In C++ a nested loop structure may be formed using


while, for, and do-while statements.
52
Example:- multiplication tables

53
Exercise
1. In the switch statement, which types can expression
evaluate to? char, byte, short, int

2. What must be used to separate each section of a for


statement. Semicolons

3. Which statement causes a program to skip to the next


iteration of a loop. Continue

4. Write a for loop that outputs 100-1 in reverse sequence.

5. Write a for loop that outputs all numbers that are


divisible by 3 between 0-50.
Question

55

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy