A while
loop allows your program to perform a set of instructions as long as a condition is satisfied.
Here is the structure of a while loop:
while(condition) {
instruction1
instruction2
...
}
Let's check an example:
int count = 1;
while(count <= 5) {
cout << "I made a mistake" << endl;
count++;
}
cout << "Finished!" << endl;
The output of this program is:
I made a mistake
I made a mistake
I made a mistake
I made a mistake
I made a mistake
Finished!
And this is what the computer does behind the scenes during this loop:
0. Creates and initializes a variable count = 1
1. First iteration:
a. Is count <= 5
true? <=> Is 1 <= 5
true? Yes.
b. cout << "I made a mistake" << endl; => Output: I made a mistake
c. count++; => count becomes 2
2. Second iteration:
a. Is count <= 5
true? <=> Is 2 <= 5
true? Yes.
b. cout << "I made a mistake" << endl; => Output: I made a mistake
c. count++; => count becomes 3
3. Third iteration:
a. Is count <= 5
true? <=> Is 3 <= 5
true? Yes.
b. cout << "I made a mistake" << endl; => Output: I made a mistake
c. count++; => count becomes 4
4. Forth iteration:
a. Is count <= 5
true? <=> Is 4 <= 5
true? Yes.
b. cout << "I made a mistake" << endl; => Output: I made a mistake
c. count++; => count becomes 5
5. Fifth iteration:
a. Is count <= 5
true? <=> Is 5 <= 5
true? Yes.
b. cout << "I made a mistake" << endl; => Output: I made a mistake
c. count++; => count becomes 6
6. Sixth iteration:
a. Is count <= 5
true? <=> Is 6 <= 5
true? No.
b. Terminate the loop.
7. cout << "Finished!" << endl; => Output: Finished!
Pro Tip:
A while loop is essentally an if statement that repeats itself over and over until the condition becomes false.
Assignment
Let's print "I promise to learn coding"
5 times using a loop.
Hint
Look at the examples above if you get stuck.
In this lesson, we will explore the while
loop in C++. The while
loop is a fundamental control structure that allows a program to execute a block of code repeatedly as long as a specified condition is true. Understanding how to use while
loops is crucial for tasks that require repetitive actions, such as iterating over data structures, performing calculations until a condition is met, or automating repetitive tasks.
The basic syntax of a while
loop in C++ is:
while(condition) {
instruction1
instruction2
...
}
The loop will continue to execute the instructions inside the block as long as the condition evaluates to true. Once the condition becomes false, the loop terminates, and the program continues with the next statement after the loop.
Let's break down the key concepts of the while
loop:
Consider the following example where we print a message five times:
#include <iostream>
using namespace std;
int main() {
int count = 1;
while(count <= 5) {
cout << "I made a mistake" << endl;
count++;
}
cout << "Finished!" << endl;
return 0;
}
In this example, the loop prints "I made a mistake" five times and then prints "Finished!". The variable count
is initialized to 1 and incremented by 1 in each iteration until it exceeds 5, at which point the loop terminates.
Here are some common mistakes to avoid and best practices to follow when using while
loops:
For more advanced use cases, you can combine while
loops with other control structures or use them in more complex algorithms. For example, you can use nested while
loops to handle multi-dimensional data structures or implement more sophisticated logic within the loop body.
Let's implement the assignment to print "I promise to learn coding" five times:
#include <iostream>
using namespace std;
int main() {
int count = 1;
while(count <= 5) {
cout << "I promise to learn coding" << endl;
count++;
}
return 0;
}
This code initializes count
to 1 and uses a while
loop to print the message five times, incrementing count
in each iteration until it exceeds 5.
When debugging while
loops, consider the following tips:
When approaching problems that require while
loops, consider the following strategies:
In this lesson, we covered the basics of the while
loop in C++, including its syntax, key concepts, common pitfalls, and best practices. We also provided examples and discussed advanced techniques, debugging tips, and problem-solving strategies. Mastering while
loops is essential for writing efficient and effective code in many programming scenarios.
For further reading and practice, consider the following resources: