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

04 Control Structures II

The document discusses different types of repetition structures in programming including while, for, do-while loops. It covers counter, sentinel, flag and EOF controlled loops. It also covers break, continue and nested control structures.

Uploaded by

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

04 Control Structures II

The document discusses different types of repetition structures in programming including while, for, do-while loops. It covers counter, sentinel, flag and EOF controlled loops. It also covers break, continue and nested control structures.

Uploaded by

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

Control Structures II: Repetition

Chapter Objectives

• Learn about repetition (looping) control structures


• Explore how to construct and use count-controlled, sentinel-controlled, flag-
controlled, and EOF-controlled repetition structures
• Examine break and continue statements
• Discover how to form and use nested control structures

2
Why Is Repetition Needed?

• There are many situations in which the same statements need to be executed
several times
• Example
– Formulas used to find average grades for students in a class

3
The while Looping (Repetition) Structure

• Syntax
while (expression)
statement
• Expression is always true in an infinite loop
• Statements must change value of expression to false

4
The while Looping (Repetition) Structure …

5
The while Looping (Repetition) Structure …

Example 5-1
i = 0; //Line 1
while (i <= 20) //Line 2
{
System.out.print(i + " "); //Line 3
i = i + 5; //Line 4
}

System.out.println(); //Line 5

Output:
0 5 10 15 20

6
The while Looping (Repetition) Structure …

• Typically, while loops are written in the following


form:

7
Counter-Controlled while Loop
• Used when exact number of data or entry pieces is
known
• General form:

8
Sentinel-Controlled while Loop
• Used when exact number of entry pieces is unknown but
last entry (special/sentinel value) is known
• General form:

9
Flag-Controlled while Loop
• Boolean value used to control loop
• General form:

10
EOF(End of File)-Controlled while Loop

• Used when input is from files


• Sentinel value is not always appropriate
• In an EOF-controlled while loop that uses the
Scanner object console to input data,
console acts at the loop control variable
• The method hasNext, of the class Scanner,
returns true if there is an input in the input
stream; otherwise it returns false

11
EOF(End of File)-Controlled while Loop …
• The expression console.hasNext() evaluates to
true if there is an input in the input stream; otherwise it
returns false
• Expressions such as console.nextInt() act as the
loop condition
• A general form of the EOF-controlled while loop that
uses the Scanner object console to input data is of the
form:

12
EOF(End of File)-Controlled while Loop …

• Suppose that inFile is a Scanner object initialized to


the input file; in this case, the EOF-controlled while
loop takes the following form:

13
The for Looping (Repetition) Structure

• Specialized form of while loop


• Simplifies the writing of count-controlled loops
• Syntax:

for (initialization; condition; update)


statement;

14
The for Looping (Repetition) Structure
(continued)
• Execution
– Initial statement executes
– The loop condition evaluated
– If loop condition evaluates to true, execute for
loop statement and execute update statement
– Repeat until loop condition is false

15
The for Looping (Repetition) Structure …

16
The for Looping (Repetition) Structure …

Example: The following for loop prints the first 10


nonnegative integers:

for (i = 0; i < 10; i++)


System.out.print(i + " ");

System.out.println();

17
The for Looping (Repetition) Structure …
Example
1. The following for loop outputs the word Hello and a star (on separate
lines) five times:
for (i = 1; i <= 5; i++)
{
System.out.println("Hello");
System.out.println("*");
}
2.
for (i = 1; i <= 5; i++)
System.out.println("Hello");
System.out.println("*");
This loop outputs the word Hello five times and the star only once

18
The for Looping (Repetition) Structure …

• Does not execute if initial condition is false


• Update expression changes value of loop control
variable, eventually making it false
• If logical expression is always true, result is an
infinite loop
• Infinite loop can be specified by omitting all three
control statements

19
The for Looping (Repetition) Structure …

• If logical expression is omitted, it is assumed to be


true
• for statement ending in semicolon is empty

20
The do…while Loop (Repetition) Structure
• Syntax:

• Statements executed first, then logical


expression evaluated
• Statement(s) executed at least once then continued if
logical expression is true

21
do…while Loop (Post-test Loop)

22
break Statements

• Used to exit early from a loop


• Used to skip remainder of switch structure
• Can be placed within if statement of a loop
– If condition is met, loop exited immediately

23
continue Statements
• Used in while, for, and do...while structures
• When executed in a loop, the remaining
statements in the loop are skipped; proceeds with
the next iteration of the loop
• When executed in a while/do…while
structure, expression evaluated immediately after
continue statement
• In a for structure, the update expression is
executed after the continue statement; then the
loop condition executes
24
Nested Control Structures

• Provides new power, subtlety, and complexity


• if, if…else, and switch structures can be placed within while loops
• for loops can be found within other for loops

25
Nested Control Structures (Example)
for (int i = 1; i <= 5; i++)
{
for (int j = 1; j <= i; j++)
System.out.print(" *");

System.out.println();
}

• Output:
*
**
***
****
*****
26
Chapter Summary
• Looping Mechanisms
– Counter-controlled while loop
– Sentinel-controlled while loop
– Flag-controlled while loop
– EOF-controlled while loop
– for loop
– do…while loop
• break statements
• continue statements
• Nested control structures

27

You might also like