Pętle while
i do...while
pełnią podobną funkcję – wykonują blok kodu wielokrotnie na podstawie określonego warunku. Istnieją jednak kluczowe różnice, które wpływają na ich zastosowanie.
1. Podstawowa różnica – miejsce sprawdzania warunku
Cecha | Pętla while | Pętla do...while |
---|---|---|
Położenie warunku | Sprawdzany na początku pętli | Sprawdzany na końcu pętli |
Minimalna liczba wykonań | 0 razy – jeśli warunek od początku jest fałszywy | Co najmniej 1 raz – nawet jeśli warunek od początku jest fałszywy |
2. Składnia
Pętla while
while (warunek) {
// Kod wykonywany, gdy warunek jest prawdziwy
}
Pętla do...while
do {
// Kod wykonywany co najmniej raz
} while (warunek);
3. Przykład – Główna różnica w działaniu
Pętla while
(może nie wykonać się ani razu)
#include <iostream>
using namespace std;
int main() {
int liczba = 10;
while (liczba < 5) {
cout << "To się nie wyświetli." << endl;
}
return 0;
}
Wynik: Brak komunikatu, ponieważ warunek (liczba < 5
) jest fałszywy od początku.
Pętla do...while
(zawsze wykona się co najmniej raz)
#include <iostream>
using namespace std;
int main() {
int liczba = 10;
do {
cout << "To się wyświetli choć raz." << endl;
} while (liczba < 5);
return 0;
}
Wynik:
To się wyświetli choć raz.
Pętla wykona się raz, mimo że warunek jest fałszywy.
4. Kiedy używać której pętli?
✅ Pętla while
– gdy istnieje szansa, że blok kodu nie musi się wykonać wcale.
✅ Pętla do...while
– gdy blok kodu musi się wykonać co najmniej raz (np. komunikat z prośbą o dane od użytkownika).
5. Przykłady zastosowania
Zastosowanie | Pętla while | Pętla do...while |
---|---|---|
Pobieranie danych do momentu podania poprawnej wartości | ✅ Tak | ✅ Tak |
Powtarzanie menu programu (np. „Czy chcesz kontynuować?”) | ❌ Nie zalecane | ✅ Idealne zastosowanie |
Sprawdzanie warunku na początku pętli (np. liczenie elementów w tablicy) | ✅ Idealne zastosowanie | ❌ Nie zalecane |
6. Podsumowanie
while
→ Gdy nie masz pewności, czy kod musi się wykonać.do...while
→ Gdy chcesz, aby kod wykonał się co najmniej raz.