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

Lecture 4 - Control Structures II (Repetition)

This document discusses repetition and looping structures in programming, including while, for, do-while loops, and nested loops. It provides examples of how to use each type of loop, when each is best suited, and how break and continue statements can alter loop flow. Key looping constructs like initialization, condition, update, and body are defined for for and while loops. Nested loops are demonstrated to create a pattern of increasing asterisks printed over multiple lines.

Uploaded by

abdi565453
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views

Lecture 4 - Control Structures II (Repetition)

This document discusses repetition and looping structures in programming, including while, for, do-while loops, and nested loops. It provides examples of how to use each type of loop, when each is best suited, and how break and continue statements can alter loop flow. Key looping constructs like initialization, condition, update, and body are defined for for and while loops. Nested loops are demonstrated to create a pattern of increasing asterisks printed over multiple lines.

Uploaded by

abdi565453
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 28

FACULTY OF TECHNOLOGY, ART AND DESIGN

Programming 2
MEK 3100

Instructor: Hadi Zahmatkesh


Email: [email protected]

Lecture 4
Why Is Repetition Needed?
• Repetition allows you to efficiently use variables

• Can input, add, and average multiple numbers using a limited


number of variables

• For example, to add five numbers:


✓ Declare a variable for each number, input the numbers and add
the variables together
✓ Create a loop that reads a number into a variable and adds it to a
variable that contains the sum of the numbers
while Looping (Repetition)
Structure
• The general form of the while statement is:

while is a reserved word

• Statement can be simple or compound

• Expression acts as a decision maker and is usually a logical


expression

• Statement is called the body of the loop

• The parentheses are part of the syntax


while Looping (Repetition)
Structure (cont’d)

• Infinite loop: continues to execute endlessly


✓ Avoided by including statements in loop body that assure exit
condition is eventually false
while Looping (Repetition)
Structure (cont’d)
while Looping (Repetition)
Structure (cont’d)
Case 1: Counter-Controlled
while Loops
• If you know exactly how many pieces of data need to be read,
• while loop becomes a counter-controlled loop
Case 2: Sentinel-Controlled
while Loops (cont’d)
Case 2: Sentinel-Controlled
while Loops (cont’d)
Case 3: Flag-Controlled
while Loops
• A flag-controlled while loop uses a bool variable to control the
loop

• The flag-controlled while loop takes the form:


Case 3: Flag-Controlled
while Loops (cont’d)
• Example 5-6 implements a number guessing game using a flag-
controlled while loop

• The program uses the function rand of the header file cstdlib
to generate a random number
✓ rand() returns an int value between 0 and 32767
✓To convert it to an integer greater than or equal to 0 and less than
100:
o rand() % 100
for Looping (Repetition)
Structure
• The general form of the for statement is:

• The initial statement, loop condition, and update


statement are called for loop control statements
✓initial statement usually initializes a variable (called the
for loop control, or for indexed, variable)

• In C++, for is a reserved word


for Looping (Repetition)
Structure (cont’d)
for Looping (Repetition)
Structure (cont’d)
for Looping (Repetition)
Structure (cont’d)
for Looping (Repetition)
Structure (cont’d)

• The following is a semantic error:


for Looping (Repetition)
Structure (cont’d)
do…while Looping
(Repetition) Structure
• General form of a do...while:

• The statement executes first, and then the expression is


evaluated

• To avoid an infinite loop, body must contain a statement that makes


the expression false

• The statement can be simple or compound


• Loop always iterates at least once
do…while Looping
(Repetition) Structure (cont’d)
do…while Looping
(Repetition) Structure (cont’d)
do…while Looping
(Repetition) Structure (cont’d)
Choosing the Right Looping
Structure
• All three loops have their place in C++

✓ If you know or can determine in advance the number of


repetitions needed, the for loop is the correct choice

✓ If you do not know and cannot determine in advance the number


of repetitions needed, and it could be zero, use a while loop

✓ If you do not know and cannot determine in advance the number


of repetitions needed, and it is at least one, use a do...while
loop
break and continue Statements
• break and continue alter the flow of control

• break statement is used for two purposes:


✓ To exit early from a loop
o Can eliminate the use of certain (flag) variables
✓ To skip the remainder of the switch structure

• After the break statement executes, the program continues with


the first statement after the structure
break and continue Statements
(cont’d)

• continue is used in while, for, and do…while structures

• When executed in a loop


✓ It skips remaining statements and proceeds with the next
iteration of the loop
Nested Control Structures
• To create the following pattern:
*
**
***
****
*****
• We can use the following code:
for (i = 1; i <= 5 ; i++)
{
for (j = 1; j <= i; j++)
cout << "*";
cout << endl;
}
Nested Control Structures (cont’d)
• What is the result if we replace the first for statement with the
following?

for (i = 5; i >= 1; i--)

• Answer:

*****
****
***
**
*

You might also like