answersLogoWhite

0


Best Answer

All loops must be condition-controlled with at least one terminating condition that is reachable. The two main types of loop are called counted loops and infinite loops.

Counted loops are typically implemented using a for statement. Although you can use while, do-while or goto loops to achieve the same thing, we must always strive to express our ideas directly in code and the for loop directly expresses the notion of a counted loop:

for(int i=0; i<100; ++i) {

// ...

}

Here, the body of the loop will execute 100 times. There is no need to comment the loop to state this fact because the for statement contains everything we need to know about this loop; it's all up front at the start of the loop. The initialiser (int i=0) executes one-time only. The conditional expression (i<100) is evaluated before each iteration and the action (++i) is executed at the end of each iteration.

Each of the three arguments in a for statement is optional, thus it is the most versatile of the looping statements. We can also use the comma-operator to perform two or more actions at the end of each loop if we need to. If we leave out all the arguments then we create an infinite loop:

for (;;) {

//...

}

A for statement with no arguments is simply taken to mean "for ever" (or forever). However, the while loop arguably expresses the notion of an infinite loop better:

while (1) {

// ...

}

Of course, even with an infinite loop we still need a terminating condition otherwise our code would literally get stuck in the loop forever. We can place break statements anywhere in the body, however terminating conditions are ideally placed up front at the start of the loop where they are easy to see:

while (1) {

if (!condition1) break; if (!condition2) break;

if (!condition3) break;

// ...

}

In this case it would arguably make far more sense to place the conditions in the loop statement itself:

while (condition1 && condition2 && condition3) {

// ...

}

How you structure your loops is entirely up to you, however the aim is to express the logic of the loop as clearly as possible. Placing the logic up-front simply makes your code easier to read and easier to maintain.

A do-while loop differs from a for loop and a while loop in that the condition is always evaluated at the end of each iteration. Thus the loop body will always execute at least once. If you need to use this looping structure, it helps to comment the start of the loop with the terminating condition in order to help the reader:

int i = random();

do { // until i is 100

// ...

// ... lots of code...

// ...

} while (i!=100);

We can also use goto loops to create highly-complex looping structures with multiple entry and exit points however these are best avoided as they are difficult to read. Anything that is difficult to read is also difficult to maintain, but goto loops can turn even the simplest code into incomprehensible "spaghetti" code. The only practical use of a goto statement is in order to break out of a nested loop:

for (int x=0; x<10; ++x)

{

for (int y=0; y<10; ++y)

{

if(x*y>50) goto exit_door;

// ...

}

}

exit_door:

// ...

User Avatar

Wiki User

9y ago
This answer is:
User Avatar

Add your answer:

Earn +20 pts
Q: When is it better to use a condition-controlled loop rather then a count-controlled loop?
Write your answer...
Submit
Still have questions?
magnify glass
imp
Continue Learning about Engineering

Does The statements within a while loop execute at least once?

No. If the loop condition is not satisfied then the loop would not be executed even once. while(condition) { ..... /statements ..... } here,when the condition is true then the statements will be executed. Otherwise they would be skipped without being executed. Only for do.. while loops this execution at least once holds good.


What is loop logic structure?

I believe it is: Loop condition Loop actions And how the loop breaks


You want many conditions to be satisfied for a single while loop how can you do it?

You can put as many conditional tests as you want in the while loop conditional location. As a rule, however, it is a better idea to simplify the conditions as much as possible so that the reader of the code has a better understanding of what is being accomplished. Once you start putting multiple conditions in a while loop with ANDs and ORs together, the logic can get complex and not well understood.


What is counter loop?

A counted loop is a loop that executes the loop's statement a pre-determined number of times. The count represent the exit condition of the loop. A loop that is not counted is an infinite loop.


What is the most basic loop in c?

Answerthe answer to this question would vary from programmer to programmer... Basically for the embedded system programmer the while loop is more important and would be considered as basic. However for the application programmer the for loop is always a better option.AnswerThese are: LABEL-goto, while, for, do-while, and recursion, of course.

Related questions

What is unique about a DOWHILE loop?

A DO-WHILE loop will always execute at least one iteration of the loop body. This is because the condition that controls the loop comes at the end of the loop, rather than at the beginning as per a WHILE or FOR loop.


Why while loop devoloped while for loop already present?

These statements are equal parts of the language, none of them if the 'better' or the 'older'.


Why is closed loop recycling better than downcycling?

Because closed-loop recycling produces more recyclable materials.


Would a controlled designed closed or opened loop system enables better control of the system?

Open loop (single cycle) involves a break requiring a restart, easily adapted to closed loop.


What is a sentinel controlled repetition?

A sentinel-controlled repetition is a loop structure where the continuation of the loop is determined by a special condition called a sentinel value. When the sentinel value is encountered, it signals the end of the loop. This allows the loop to run until a specific condition is met, rather than for a predetermined number of iterations.


Which one is better recurssion or loop and why?

They are different tools for different jobs. This is like asking which is better, a hammer or a screwdriver?


Why is the teardrop elliptical loop a much better design for roller coasters than the circle loop design?

A teardrop loop helps equally distribute the forces around the loop, as you end up slowing down as you crest, so it will get tighter as it goes up. In a circular loop, there is A: Ejector airtime at the top and B: Increased, and possible dangerous, G-Forces at the bottom of the loop.


Does The statements within a while loop execute at least once?

No. If the loop condition is not satisfied then the loop would not be executed even once. while(condition) { ..... /statements ..... } here,when the condition is true then the statements will be executed. Otherwise they would be skipped without being executed. Only for do.. while loops this execution at least once holds good.


What are the release dates for Loop Loop Loop Loop - 2014?

Loop Loop Loop Loop - 2014 was released on: USA: 15 February 2014


What is a nested loop in java?

A nested loop is a (inner) loop that appears in the loop body of another (outer) loop. The inner or outer loop can be any type: while, do while, or for. For example, the inner loop can be a while loop while an outer loop can be a for loop.


The while loop is a type of loop?

Is loop


What is loop logic structure?

I believe it is: Loop condition Loop actions And how the loop breaks