The document discusses different types of loops in C#, including for, while, and do-while loops. It provides examples and explanations of how each loop works. The key types of loops are:
- For loops, which allow initialization of a counter variable, a condition to test each iteration, and an increment/decrement portion.
- While loops, which test a condition and run the code block if true, then re-test the condition.
- Do-while loops, which run the code block first before checking the condition, so the code runs at least once.
Break and continue statements can alter normal loop flow by breaking out of the entire loop or skipping to the next iteration. Lo
2. C# Control Structures: Repetition
for structure/foreach structure
while structure
T
F
T
do/while structure
F
T
F
2
3. while Statement
The while statement has the following
syntax:
while is a
reserved word
If the condition is true, the statement is executed.
Then the condition is evaluated again.
while ( condition )
statement;
The statement (or a block of statements) is executed
repetitively until the condition becomes false.
3
4. while Statement (cont’d)
true
Product <= 1000
Product = 2 * product
false
int product;
product = 2;
while (product <= 1000)
{
product = 2 * product;
}
// beginning of the next statement
4
5. while Statement
Note that if the condition of a while statement
is false initially, the statement is never
executed
Therefore, the body of a while loop will
execute zero or more times
5
6. Infinite Loops
The body of a while loop must eventually make the
condition false
If not, it is an infinite loop, which will execute until the
user interrupts the program
This is a common type of logical error
You should always double check to ensure that your
loops will terminate normally
6
7. Example 1: Counter Controlled While Loop
Control variable
• The variable used as a counter to determine whether or
not the loop should continue
Three components
• Initial value of the counter
• Check whether or not the counter has reached target
– When the looping should continue
• Incrementing/decrementing of the counter
7
8. Example 2: Sentinel Controlled while Loops
This is typical of an input-driven program
Continues an arbitrary amount of times
Sentinel value
• Causes loop to break
• Avoid collisions
– When flag value = user entered value
8
9. The do Statement
The do statement has the following syntax:
Uses both
the do and
while
reserved
words
do
{
statement;
}
while ( condition );
The statement is executed once initially, then the condition is evaluated
The statement is repetitively executed until the condition becomes false
9
11. Comparing the while and do Loops
The while loops vs. the do/while loops
Using a while loop
• Condition is tested
• The action is performed
• Loop could be skipped altogether
while structure
T
F
do/while structure
Using a do/while loop
• Action is performed
• Then the loop condition is tested
• Loop will be run at least once
T
F
Question: write a program to get max from user and then print the numbers from 1 to max
11
12. The for Statement
The for statement has the following syntax:
Reserved
word
The initialization portion
is executed once
before the loop begins
The statement is
executed until the
condition becomes false
for ( initialization ; condition ; increment )
statement;
The increment portion is executed at the end of each iteration
12
13. Flowchart of a for loop
initialization
condition
true
action(s)
increment
false
for ( initialization ; condition ; increment )
action(s);
13
14. The for Statement: Example
Establish initial value
of control variable.
Determine if final
value of control
variable has
been reached.
int counter = 1
counter <= 10
false
true Console.WriteLine
( counter * 10 );
Body of loop (this may
be multiple statements)
counter++
Increment the
control variable.
for (int counter = 1; counter <= 10; counter++)
Console.WriteLine (counter * 10);
// beginning of the next statement
14
15. The for Statement
A for loop is equivalent to the following
while loop:
initialization;
while ( condition )
{
statement;
increment;
}
15
16. The for Statement
It is well suited for executing a specific
number of times that can be determined in
advance
Increment/Decrement
• When incrementing
– In most cases < or <= is used
• When decrementing
– In most cases > or >= is used
16
17. The flexibility of the for Statement
Each expression in the header of a for loop is optional
If the initialization is left out, no initialization is performed
If the condition is left out, it is always considered to be true,
and therefore creates an infinite loop
If the increment is left out, no increment operation is performed
Both semi-colons are always required in the for loop
header
for ( ; ; )
{
// do something
}
17
18. A Problem to Think About
How to print this?
xxxxxxxx
xxxxxxx
xxxxxx
xxxxx
xxxx
xxx
xx
x
What about this?
xxxxxxxxxxxxxxx
xxxxxxxxxxxxx
xxxxxxxxxxx
xxxxxxxxx
xxxxxxx
xxxxx
xxx
x
18
19. Statements break and continue
Used to alter the flow of control
The break statement
• Used to exit a loop early
The continue statement
• Used to skip the rest of the statements in a loop and
restart at the first statement in the loop
Programs can be completed without their
usage; use with caution.
19