Sentinel Loops
Learn and practice loops controlled by a sentinel value.
We'll cover the following...
The sentinel value
Sometimes, the loop doesn’t have a fixed number of repetitions. Instead, an indicator value stops the loop. This special value is called the sentinel value. For example, we don’t know how much data is in a file without reading it all. However, we know that every file ends with an end-of-file (EOF) mark. So, the EOF mark is the sentinel value in this case.
Note: We should select a sentinel value that’s not expected in the normal input.
The while loop
We use the while loop when the termination of the loop depends on the sentinel value instead of a definite number of iterations.
As a simple example, we want to display the reverse sequence of digits in a positive integer value input by the user.
class Test
{
  static void Main()
  {
      System.Console.WriteLine("Enter the number: ");
      int a = int.Parse(System.Console.ReadLine()); // Taking input in variable a
      while (a > 0) // This loop will terminate when the value is not greater than 0
      {
          System.Console.Write(a % 10);
          a /= 10; // Dividing a by 10 and assigning the result to variable a
      }
      System.Console.WriteLine("");
  }
}In the program above:
- 
In line 6, we take input from the user, and then convert it into an integer value using int.Parse().
- 
The loop statement, while, followed by a conditional expression.Note: There is no semicolon ( ;) at the end of line 9.
- 
The next four statements after the whileloop, line 9 to 12, are in the body of the loop indicated by the indentation.
- 
The body of the loop executes if the condition expression a > 0istrue. This statement tests the condition before entering the loop. Therefore, such a ...