Klaus9090
Klaus9090

Reputation: 153

Is a For Loop always executed at least once?

According to my teacher, a for-loop always executes at least once, even if the condition is not met.

Example (like I know it from C++):

for (int i=6; i <=5; i++) {
    //irrelevant for this question
}

According to her, this loop would execute at least once, yet it does not, or am I missing something? Is there any case, no matter what language, where this would execute once? To eliminate the thought in advance: yes, it was about for loops, not do-while-loops.

Edit:

Thanks for all those quick answers, I guess this case is already closed. Have a nice day/night.

Upvotes: 15

Views: 40615

Answers (4)

NathanOliver
NathanOliver

Reputation: 180650

A loop will only execute while its condition is true. Since a for loop and a while loop both check the condition before the body is executed, they will never execute if the condition is false.

The only loop that will is a do while loop. With a do while loop, the condition is not evaluated until the end of the loop. Because of that, a do while loop will always execute at least once.

Upvotes: 7

NonCreature0714
NonCreature0714

Reputation: 6014

You could say a for-loop is always evaluated at least once.

But if a for-loop's condition is not met, its block will never execute.

Because you didn't ask about other loops, I won't address those.

Upvotes: 24

Eesha
Eesha

Reputation: 19

A for-loop always makes sure the condition is true before running the program. Whereas, a do-loop runs the program at least once and then checks the condition.

Upvotes: 1

Rajeev Singh
Rajeev Singh

Reputation: 3332

An entry controlled loop will never execute if the condition is false, however, exit controlled loop will execute at least once.

Upvotes: 0

Related Questions