C ++ while in do ... while Loop (z primeri)

V tej vadnici se bomo s pomočjo nekaterih primerov naučili uporabe zank while in do … while v programiranju na C ++.

Pri računalniškem programiranju se zanke uporabljajo za ponovitev bloka kode.

Recimo na primer, da želimo sporočilo prikazati 100-krat. Nato lahko namesto pisanja izjave 100-krat napišemo zanko.

To je bil le preprost primer; z učinkovito uporabo zank lahko dosežemo veliko večjo učinkovitost in prefinjenost naših programov.

V jeziku C ++ obstajajo 3 vrste zank.

  1. for zanko
  2. while zanko
  3. do… while zanko

V prejšnji vadnici smo spoznali zanko C ++ for. Tu se bomo naučili whilein do… whilezanke.

C ++, medtem ko Loop

Sintaksa whilezanke je:

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

Tukaj,

  • whileZanka ovrednoticondition
  • Če conditionoceni na true, se izvede koda znotraj whilezanke.
  • Ponovno conditionse oceni.
  • Ta postopek se nadaljuje, dokler conditionni false.
  • Ko conditionoceni na false, se zanka konča.

Če želite izvedeti več o tem conditions, obiščite relacijski in logični operaterji C ++.

Diagram poteka zanke while

Diagram poteka zanke C ++ while

Primer 1: Prikaži številke od 1 do 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; )

Izhod

 1 2 3 4 5

Tukaj je, kako program deluje.

Ponavljanje Spremenljiv i <= 5 Ukrepanje
1. i = 1 true 1 se natisne in ipoveča na 2.
2. i = 2 true 2 se natisne in ipoveča na 3.
3. i = 3 true 3 se natisne in ipoveča na4
4. i = 4 true 4 se natisne in ipoveča na 5.
5. i = 5 true 5 se natisne in ipoveča na 6.
6. i = 6 false Zanka je prekinjena

Primer 2: Vsota samo pozitivnih števil

 // 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; )

Izhod

 Vnesite številko: 6 Vnesite številko: 12 Vnesite številko: 7 Vnesite številko: 0 Vnesite številko: -2 Vsota je 25

V tem programu je uporabnik pozvan, da vnese številko, ki je shranjena v spremenljivki številka.

Da bi shranili vsoto števil, razglasimo spremenljivko vsota in jo inicializiramo na vrednost 0.

whileZanka se nadaljuje, dokler uporabnik ne vnese z negativnim predznakom. Med vsako ponovitvijo se številki, ki jo vnese uporabnik, doda spremenljivka vsote.

Ko uporabnik vnese negativno število, se zanka konča. Na koncu se prikaže skupna vsota.

C ++ do… medtem ko Loop

do… whileZanka je varianta whilezanke z eno pomembno razliko: telo do… whilezanke izvede enkrat, preden conditionse preveri.

Njegova sintaksa je:

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

Tukaj,

  • Telo zanke se najprej izvede. Nato conditionse ovrednoti.
  • Če conditionoceni na true, se telo zanke znotraj dostavka znova izvede.
  • Ponovno conditionse oceni.
  • Če conditionoceni na true, se telo zanke znotraj dostavka znova izvede.
  • Ta postopek se nadaljuje, dokler ne conditionoceni do false. Nato se zanka ustavi.

Diagram poteka do … while Loop

Diagram poteka v zanki C ++ do… while

Primer 3: Prikaz številk od 1 do 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; )

Izhod

 1 2 3 4 5

Tukaj je, kako program deluje.

Ponavljanje Spremenljiv i <= 5 Ukrepanje
i = 1 ni preverjeno 1 se natisne in ipoveča na 2
1. i = 2 true 2 se natisne in ipoveča na 3
2. i = 3 true 3 se natisne in ipoveča na 4
3. i = 4 true 4 se natisne in ipoveča na 5
4. i = 5 true 5 se natisne in ipoveča na 6
5. i = 6 false Zanka je prekinjena

Primer 4: Vsota samo pozitivnih števil

 // 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; )

Izhod 1

 Vnesite številko: 6 Vnesite številko: 12 Vnesite številko: 7 Vnesite številko: 0 Vnesite številko: -2 Vsota je 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.

Vendar, whilein do… whilezanke se običajno uporablja, ko je število iteracij neznano. Na primer

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

Oglejte si te primere, če želite izvedeti več:

  • Program C ++ za prikaz Fibonaccijevih serij
  • Program C ++ za iskanje GCD
  • Program C ++ za iskanje LCM

Zanimive Članki...