Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> C Sprache

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++.

  1. for Schleife
  2. while Schleife
  3. do...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,

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 ergibt true , der Körper der Schleife innerhalb des do Anweisung wird erneut ausgeführt.
  • Der condition erneut ausgewertet.
  • Falls der condition wird zu true ausgewertet , der Schleifenkörper innerhalb von do Anweisung wird erneut ausgeführt.
  • Dieser Vorgang wird bis zum condition fortgesetzt ergibt false . 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

  1. C++-Klassen und -Objekte
  2. C++-Speicherverwaltung:neu und löschen
  3. Öffentliche, geschützte und private Vererbung in C++
  4. C++ Friend-Funktion und Friend-Klassen
  5. C++ do…while-Schleife mit Beispielen
  6. Unterschied zwischen while und do-while:An Beispielen erklärt
  7. Palindrom-Zahlenprogramm in Java mit While- und For-Schleife
  8. C++ Datum und Uhrzeit
  9. C++-Überladung (Operator und Funktion)
  10. C++-Dateien und -Streams