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++.
for
Schleifewhile
Schleifedo...while
Schleife
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
while
Schleife wertetcondition
aus - Wenn der
condition
ergibttrue
, der Code innerhalb vonwhile
Schleife wird ausgeführt. - Die
condition
wird erneut ausgewertet. - Dieser Vorgang wird bis zum
condition
fortgesetzt istfalse
. - Wenn der
condition
ergibtfalse
, 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
condition
ausgewertet. - Wenn der
condition
ergibttrue
, der Körper der Schleife innerhalb desdo
Anweisung wird erneut ausgeführt. - Der
condition
erneut ausgewertet. - Falls der
condition
wird zutrue
ausgewertet , der Schleifenkörper innerhalb vondo
Anweisung wird erneut ausgeführt. - Dieser Vorgang wird bis zum
condition
fortgesetzt 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