While loop

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

In computer science, a while loop is a statement which is used to execute code repeatedly based on a condition. Simply, it can be thought of as a repeating if statement.  

Overview[change | change source]

The while loop consists of two parts: the condition and a block of code. The condition is evaluated and if it is true, the block of code is executed. This repeats until the condition evaluates to false. As a pre-test loop, the while loop checks the condition before the block is executed. In contrast, the do-while loop checks the condition after the loop has executed. A while loop would typically be used when you don't know the number of times you would like to loop over the block of code. Instead, code would continue looping until a particular condition is met. When the number of times a loop is to be executed is already known before the execution of the loop, a for loop would be a better choice.

A template of a while loop is shown below:

while (condition) 
{
   statements;
}

Example[change | change source]

Example code in the C programming language is shown below.


int x = 0;
while (x < 5) 
{
    printf ("x = %d\n", x);
    x++;
}

In this example, the loop first checks to see if the variable x is less than 5. Because it is, it will enter the loop, printing the value of x and then increment x by 1. After completing the code block, it will continue to repeat the code block until x is equal to 5. When x is equal to five, the condition evaluates to false and the code exits the while loop. A loop that continues repeating forever is possible if the condition is always true. When this happens, it is up to the developer to create a statement to exit the loop. An example of this is shown below:  

while (true) 
{
    //do complicated stuff
    if (someCondition) break;
    //more stuff
}

In the above example, the condition while always be true. To exit the loop, a break statement is used when a specific condition inside the loop evaluates to true.