C ++ mens og gjør ... mens Loop (med eksempler)

I denne opplæringen lærer vi bruken av mens og gjør… mens sløyfer i C ++ programmering ved hjelp av noen eksempler.

I dataprogrammering brukes sløyfer til å gjenta en blokk med kode.

La oss for eksempel si at vi vil vise en melding 100 ganger. Så i stedet for å skrive utskriftsuttalelsen 100 ganger, kan vi bruke en løkke.

Det var bare et enkelt eksempel; vi kan oppnå mye mer effektivitet og raffinement i programmene våre ved å bruke løkker effektivt.

Det er 3 typer løkker i C ++.

  1. for Løkke
  2. while Løkke
  3. do… while Løkke

I forrige opplæring lærte vi om C ++ for loop. Her skal vi lære om whileog do… whileløkker.

C ++ mens Loop

Syntaksen til whilesløyfen er:

 while (condition) ( // body of the loop )

Her,

  • En whileløkke evaluerercondition
  • Hvis det conditionevalueres til true, blir koden i whilesløyfen utført.
  • Den conditionblir evaluert på nytt.
  • Denne prosessen fortsetter til den conditioner false.
  • Når conditionevaluerer til false, avsluttes sløyfen.

For å lære mer om dette conditions, besøk C ++ Relational and Logical Operators.

Flytskjema for mens Loop

Flytskjema for C ++ mens sløyfe

Eksempel 1: Vis tall fra 1 til 5

 // C++ Program to print numbers from 1 to 5 #include using namespace std; int main() ( int i = 1; // while loop from 1 to 5 while (i <= 5) ( cout << i << " "; ++i; ) return 0; )

Produksjon

 1 2 3 4 5

Slik fungerer programmet.

Iterasjon Variabel jeg <= 5 Handling
Første i = 1 true 1 skrives ut og iøkes til 2.
2. plass i = 2 true 2 skrives ut og iøkes til 3.
3. i = 3 true 3 er trykt og iøkes til4
4. plass i = 4 true 4 er trykt og iøkes til 5.
5. i = 5 true 5 er trykt og iøkes til 6.
Sjette i = 6 false Sløyfen er avsluttet

Eksempel 2: Bare summen av positive tall

 // 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 using namespace std; int main() ( int number; int sum = 0; // take input from the user cout <> number; while (number>= 0) ( // add all positive numbers sum += number; // take input again if the number is positive cout <> number; ) // display the sum cout << "The sum is " << sum << endl; return 0; )

Produksjon

 Tast inn et tall: 6 Tast inn et tall: 12 Tast inn et tall: 7 Tast inn et tall: 0 Tast inn et tall: -2 Summen er 25

I dette programmet blir brukeren bedt om å angi et nummer som er lagret i det variable nummeret.

For å lagre summen av tallene, erklærer vi en variabel sum og initialiserer den til verdien av 0.

Den whilesløyfen fortsetter inntil brukeren angir et negativt tall. Under hver iterasjon blir nummeret som er angitt av brukeren lagt til sumvariabelen.

Når brukeren skriver inn et negativt tall, avsluttes sløyfen. Til slutt vises totalsummen.

C ++ gjør … mens Loop

Den do… whilesløyfe er en variant av den whilesløyfe med en viktig forskjell: hoveddelen av do… whilesløyfen blir utført en gang før den conditionblir kontrollert.

Dens syntaks er:

 do ( // body of loop; ) while (condition);

Her,

  • Sløyfens kropp utføres først. Deretter conditionblir det evaluert.
  • Hvis det conditionevalueres til true, blir kroppen av løkken inne i douttalelsen utført på nytt.
  • Det conditionblir evaluert igjen.
  • Hvis det conditionevalueres til true, blir kroppen av løkken inne i douttalelsen utført på nytt.
  • Denne prosessen fortsetter til conditionevalueringen til false. Så stopper løkken.

Flytskjema over gjør… mens Loop

Flytskjema for C ++ gjør… mens sløyfe

Eksempel 3: Vis tall fra 1 til 5

 // C++ Program to print numbers from 1 to 5 #include using namespace std; int main() ( int i = 1; // do… while loop from 1 to 5 do ( cout << i << " "; ++i; ) while (i <= 5); return 0; )

Produksjon

 1 2 3 4 5

Slik fungerer programmet.

Iterasjon Variabel jeg <= 5 Handling
i = 1 ikke sjekket 1 skrives ut og iøkes til 2
Første i = 2 true 2 skrives ut og iøkes til 3
2. plass i = 3 true 3 er trykt og iøkes til 4
3. i = 4 true 4 er trykt og iøkes til 5
4. plass i = 5 true 5 er trykt og iøkes til 6
5. i = 6 false Sløyfen er avsluttet

Eksempel 4: Bare summen av positive tall

 // 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 using namespace std; int main() ( int number = 0; int sum = 0; do ( sum += number; // take input from the user cout <> number; ) while (number>= 0); // display the sum cout << "The sum is " << sum << endl; return 0; )

Utgang 1

 Tast inn et tall: 6 Tast inn et tall: 12 Tast inn et tall: 7 Tast inn et tall: 0 Tast inn et tall: -2 Summen er 25

Here, the do… while loop continues until the user enters a negative number. When the number is negative, the loop terminates; the negative number is not added to the sum variable.

Output 2

 Enter a number: -6 The sum is 0.

The body of the do… while loop runs only once if the user enters a negative number.

Infinite while loop

If the condition of a loop is always true, the loop runs for infinite times (until the memory is full). For example,

 // infinite while loop while(true) ( // body of the loop )

Here is an example of an infinite do… while loop.

 // infinite do… while loop int count = 1; do ( // body of loop ) while(count == 1);

In the above programs, the condition is always true. Hence, the loop body will run for infinite times.

for vs while loops

A for loop is usually used when the number of iterations is known. For example,

 // This loop is iterated 5 times for (int i = 1; i <=5; ++i) ( // body of the loop )

Here, we know that the for-loop will be executed 5 times.

Imidlertid, whileog do… whileløkkene blir vanligvis brukt når antall iterasjoner er ikke kjent. For eksempel,

 while (condition) ( // body of the loop )

Ta en titt på disse eksemplene for å lære mer:

  • C ++ Program for å vise Fibonacci-serien
  • C ++ Program for å finne GCD
  • C ++ Program for å finne LCM

Interessante artikler...