C++ while und do...while Schleife
C++ while und do...while Schleife
In diesem Tutorial lernen wir die Verwendung von while- und do...while-Schleifen in der C++-Programmierung anhand einiger Beispiele kennen.
In der Computerprogrammierung werden Schleifen verwendet, um einen Codeblock zu wiederholen.
Angenommen, wir möchten eine Nachricht 100 Mal anzeigen. Anstatt die Druckanweisung 100 Mal zu schreiben, können wir dann eine Schleife verwenden.
Das war nur ein einfaches Beispiel; wir können viel mehr Effizienz und Raffinesse in unseren Programmen erreichen, indem wir Loops effektiv nutzen.
Es gibt 3 Arten von Schleifen in C++.
forSchleifewhileSchleifedo...whileSchleife
Im vorherigen Tutorial haben wir etwas über die C++ for-Schleife gelernt. Hier lernen wir etwas über while und do...while Schleifen.
C++-While-Schleife
Die Syntax des while Schleife ist:
while (condition) {
// body of the loop
} Hier,
- A
whileSchleife wertetconditionaus - Wenn der
conditionergibttrue, der Code innerhalb vonwhileSchleife wird ausgeführt. - Die
conditionwird erneut ausgewertet. - Dieser Vorgang wird bis zum
conditionfortgesetzt istfalse. - Wenn der
conditionergibtfalse, wird die Schleife beendet.
Um mehr über conditions zu erfahren , besuchen Sie Relationale und logische Operatoren in C++.
Flussdiagramm der While-Schleife
Beispiel 1:Zahlen von 1 bis 5 anzeigen
// C++ Program to print numbers from 1 to 5
#include <iostream>
using namespace std;
int main() {
int i = 1;
// while loop from 1 to 5
while (i <= 5) {
cout << i << " ";
++i;
}
return 0;
} Ausgabe
1 2 3 4 5
So funktioniert das Programm.
| Iteration | Variable | ich <=5 | Aktion |
|---|---|---|---|
| 1. | i = 1 | true |
1
wird gedruckt und i wird auf 2 erhöht . |
| 2. | i = 2 | true |
2
wird gedruckt und i wird auf 3 erhöht . |
| 3. | i = 3 | true |
3
wird gedruckt und i wird auf 4 erhöht |
| 4. | i = 4 | true |
4
wird gedruckt und i wird auf 5 erhöht . |
| 5. | i = 5 | true |
5
wird gedruckt und i wird auf 6 erhöht . |
| 6. | i = 6 | false | Die Schleife wird beendet |
Beispiel 2:Nur Summe positiver Zahlen
// program to find the sum of positive numbers
// if the user enters a negative number, the loop ends
// the negative number entered is not added to the sum
#include <iostream>
using namespace std;
int main() {
int number;
int sum = 0;
// take input from the user
cout << "Enter a number: ";
cin >> number;
while (number >= 0) {
// add all positive numbers
sum += number;
// take input again if the number is positive
cout << "Enter a number: ";
cin >> number;
}
// display the sum
cout << "\nThe sum is " << sum << endl;
return 0;
} Ausgabe
Enter a number: 6 Enter a number: 12 Enter a number: 7 Enter a number: 0 Enter a number: -2 The sum is 25
In diesem Programm wird der Benutzer aufgefordert, eine Zahl einzugeben, die in der Variablen number gespeichert wird .
Um die Summe der Zahlen zu speichern, deklarieren wir eine Variable sum und initialisieren Sie es auf den Wert von 0 .
Der while Die Schleife wird fortgesetzt, bis der Benutzer eine negative Zahl eingibt. Bei jeder Iteration wird die vom Benutzer eingegebene Zahl zur Summe addiert Variable.
Wenn der Benutzer eine negative Zahl eingibt, wird die Schleife beendet. Abschließend wird die Gesamtsumme angezeigt.
C++ do...while-Schleife
Der do...while Schleife ist eine Variante des while -Schleife mit einem wichtigen Unterschied:dem Hauptteil von do...while Schleife wird einmal vor dem condition ausgeführt ist aktiviert.
Seine Syntax ist:
do {
// body of loop;
}
while (condition); Hier,
- Zuerst wird der Rumpf der Schleife ausgeführt. Dann die
conditionausgewertet. - Wenn der
conditionergibttrue, der Körper der Schleife innerhalb desdoAnweisung wird erneut ausgeführt. - Der
conditionerneut ausgewertet. - Falls der
conditionwird zutrueausgewertet , der Schleifenkörper innerhalb vondoAnweisung wird erneut ausgeführt. - Dieser Vorgang wird bis zum
conditionfortgesetzt ergibtfalse. Dann stoppt die Schleife.
Flussdiagramm der do...while-Schleife
Beispiel 3:Zahlen von 1 bis 5 anzeigen
// C++ Program to print numbers from 1 to 5
#include <iostream>
using namespace std;
int main() {
int i = 1;
// do...while loop from 1 to 5
do {
cout << i << " ";
++i;
}
while (i <= 5);
return 0;
} Ausgabe
1 2 3 4 5
So funktioniert das Programm.
| Iteration | Variable | ich <=5 | Aktion |
|---|---|---|---|
i = 1 | nicht geprüft |
1
wird gedruckt und i wird auf 2 erhöht | |
| 1. | i = 2 | true |
2
wird gedruckt und i wird auf 3 erhöht |
| 2. | i = 3 | true |
3
gedruckt und i wird auf 4 erhöht |
| 3. | i = 4 | true |
4
wird gedruckt und i wird auf 5 erhöht |
| 4. | i = 5 | true |
5
wird gedruckt und i wird auf 6 erhöht |
| 5. | i = 6 | false | Die Schleife wird beendet |
Beispiel 4:Nur Summe positiver Zahlen
// program to find the sum of positive numbers
// If the user enters a negative number, the loop ends
// the negative number entered is not added to the sum
#include <iostream>
using namespace std;
int main() {
int number = 0;
int sum = 0;
do {
sum += number;
// take input from the user
cout << "Enter a number: ";
cin >> number;
}
while (number >= 0);
// display the sum
cout << "\nThe sum is " << sum << endl;
return 0;
} Ausgang 1
Enter a number: 6 Enter a number: 12 Enter a number: 7 Enter a number: 0 Enter a number: -2 The sum is 25
Hier die do...while Die Schleife wird fortgesetzt, bis der Benutzer eine negative Zahl eingibt. Wenn die Zahl negativ ist, endet die Schleife; die negative Zahl wird nicht zu sum hinzugefügt Variable.
Ausgang 2
Enter a number: -6 The sum is 0.
Der Körper des do...while Schleife wird nur einmal ausgeführt, wenn der Benutzer eine negative Zahl eingibt.
Endlose While-Schleife
Wenn der condition einer Schleife ist immer true , läuft die Schleife unendlich oft (bis der Speicher voll ist). Zum Beispiel
// infinite while loop
while(true) {
// body of the loop
}
Hier ist ein Beispiel für ein unendliches do...while Schleife.
// infinite do...while loop
int count = 1;
do {
// body of loop
}
while(count == 1);
In den obigen Programmen wird der condition ist immer true . Daher läuft der Schleifenkörper unendlich lange.
for-vs-while-Schleifen
Ein for Schleife wird normalerweise verwendet, wenn die Anzahl der Iterationen bekannt ist. Zum Beispiel
// This loop is iterated 5 times
for (int i = 1; i <=5; ++i) {
// body of the loop
} Hier wissen wir, dass die for-Schleife fünfmal ausgeführt wird.
Allerdings while und do...while Schleifen werden normalerweise verwendet, wenn die Anzahl der Iterationen unbekannt ist. Zum Beispiel
while (condition) {
// body of the loop
} Sehen Sie sich diese Beispiele an, um mehr zu erfahren:
- C++-Programm zum Anzeigen von Fibonacci-Reihen
- C++-Programm zum Suchen von GCD
- C++-Programm zum Finden von LCM
C Sprache
- C++-Klassen und -Objekte
- C++-Speicherverwaltung:neu und löschen
- Öffentliche, geschützte und private Vererbung in C++
- C++ Friend-Funktion und Friend-Klassen
- C++ do…while-Schleife mit Beispielen
- Unterschied zwischen while und do-while:An Beispielen erklärt
- Palindrom-Zahlenprogramm in Java mit While- und For-Schleife
- C++ Datum und Uhrzeit
- C++-Überladung (Operator und Funktion)
- C++-Dateien und -Streams