Sentinel Controlled Loop
A sentinel controlled loop is also called an indefinite repetition loop because the number of iterations is not known before the loop starts executing. In a sentinel controlled loop, a special value called sentinel value is used to change the loop control expression from true to false in order to determine whether to execute the loop body. Sentinel controlled loop is useful when we don’t know in advance how many times the loop will be executed. An example of a sentinel controlled loop is the processing of data from a text file of unknown size.
Below is the program to illustrate sentinel controlled loop in C:
The length of string is 13
Counter Controlled Loop
A counter controlled loop is also known as definite repetition loop, since the number of iterations is known before the loop begins to execute. The counter-controlled loop has the following components:
- a control variable.
- the increment (or decrement)value by which the control variable is modified at each iteration of the loop.
- the loop terminating condition that checks if looping should continue.
Since the counter controlled loop is controlled by a counter value, at each iteration counter value will increase or decrease with a definite value and condition will be checked, so the number of loop execution becomes definite. Any task involving definite iteration can be solved using a counter controlled loop for example printing the first 10 natural numbers.
1 2 3 4 5
The main difference between Sentinel and Counter Controlled Loop in C is that in a Sentinel Controlled Loop, exactly how many times loop body will be executed is not known and in a Counter Controlled Loop, how many times loop body will be executed is known.
Difference between Sentinel and Counter Controlled Loop in C is given below:
|S.NO.||BASIS OF COMPARISON||SENTINEL CONTROLLED LOOP||COUNTER CONTROLLED LOOP|
|1.||Definition||A sentinel controlled loop is the indefinite repetition loop as the number of repetitions is not known before the loop begins executing||A counter controlled loop is the definite repetition loop as the number of repetitions is known before the loop begins executing|
|2.||Controlling variable||Controlled variable variable used is know as sentinel variable.||Controlled variable used is know as counter.|
|3.||Number of iteration||Unknown number of iteration||Known number of iteration.|
|4.||Value of variable||The value of the variable is not strict and it varies.||The value of the variable is strict.|
|5.||Limitation of variable||The Limitation of the variable is strict.||The Limitation of the variable is strict also.|
|6.||Example||A do….while loop is an example of sentinel controlled loop.||A while loop is an example of counter controlled loop.|
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Difference between Straight Ring Counter and Twisted Ring Counter
- Difference between Open-Loop Control System and Closed-Loop Control System
- Difference between while and do-while loop in C, C++, Java
- Difference between for and do-while loop in C, C++, Java
- Difference between for and while loop in C, C++, Java
- Difference between Nested Loop Join and Hash Join
- Difference between Nested Loop join and Sort Merge Join
- Print 1 to 100 in C++, without loop and recursion
- How to find length of a string without string.h and loop in C?
- Print substring of a given string without using any string function and loop in C
- What happens if loop till Maximum of Signed and Unsigned in C/C++?
- Write a C program to print "GfG" repeatedly without using loop, recursion and any control structure?
- How to print a number 100 times without using loop and recursion in C?
- Print a number 100 times without using loop, recursion and macro expansion in C?
- How will you print numbers from 1 to 100 without using loop?
- Detect loop in a linked list
- A nested loop puzzle
- How to concatenate two integer arrays without using loop in C ?
- Output of C programs | Set 56 (While loop)
- Output of C programs | Set 57 (for loop)
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.