C++ do…while petlja s primjerima

⚡ Pametni sažetak

Petlja "do-while" u C++ izvršava blok koda jednom, a zatim ga ponavlja sve dok uvjet ostaje istinit. Ovdje ćete naučiti kako funkcionira do-while petlja, njezinu sintaksu, kada je koristiti i primjere.

  • 🔂 Što je to: Do-while petlja izvršava svoje tijelo jednom, a zatim se ponavlja dok je uvjet istinit.
  • Prvo se pokreće: Tijelo se uvijek izvrši barem jednom prije nego što se provjeri uvjet.
  • 🧾 Sintaksa: do { naredbe } while(uvjet); završava točkom-zarezom.
  • 🎯 Kada koristiti: Koristite ga kada se kod mora pokrenuti barem jednom, kao što su izbornici.
  • 🤖 Pomoć umjetne inteligencije: AI alati poput GitHub Copilota pišu i ispravljaju pogreške C++ petlje se trenutno pokreću.

C++ Do-While petlja

Što je do-while petlja?

Do-while petlja ponavlja dio od C++ programirati nekoliko puta. U do-while petlji testni izraz se dodaje na dnu petlje. Tijelo petlje dolazi prije testnog izraza. Zato se tijelo petlje mora jednom izvršiti, čak i kada testni izraz procijeni netočno u prvom testu.

Kada koristiti do-while petlju?

Do-while petlja bi se trebala koristiti kada broj ponavljanja nije fiksan, a petlja se mora izvršiti barem jednom. The C++ kompajler prvo izvršava tijelo petlje prije evaluacije uvjeta. To znači da petlja mora vratiti rezultat. To je slučaj čak i kada se testni uvjet ocijeni kao netočan pri prvoj procjeni. Budući da je tijelo petlje već izvršeno, mora vratiti rezultat.

Sintaksa

Osnovna sintaksa C++ do while petlja je sljedeća:

do{    
//code 
}while(condition);  

Uvjet je probni izraz. Mora biti istinito da bi se petlja izvršila. { i } označavaju tijelo do while petlje. Dolazi prije uvjeta. Dakle, izvršava se prije uvjeta.

Kako radi petlja do-while?

Do-While petlja
C++ Učinite Dijagram toka

Objašnjenje dijagrama toka:

  1. Početak do while petlje.
  2. Tijelo do while petlje.
  3. Ispitni izraz ili uvjet koji se procjenjuje.
  4. Ako je testni izraz istinit, C++ prevodilac je izvršio tijelo do while petlje.
  5. Ako je testni izraz lažan, C++ prevodilac izvršava naredbe nakon tijela petlje.
  6. Naredbe koje dolaze nakon tijela petlje.

Primjer 1

#include <iostream>
using namespace std;
int main() {
	// Local variable 
	int x = 1;
	do {
		cout << "X is: " << x << endl;
		x = x + 1;
	} while (x < 5);
	return 0;
}

Izlaz:

Do-While petlja

Evo snimke zaslona koda:

Do-While petlja

Code Objašnjenje:

  1. Uključivanje iostream datoteke zaglavlja u naš kod. Omogućit će nam čitanje s konzole i pisanje na nju.
  2. Uključivanje std imenskog prostora kako bi se njegove klase i funkcije koristile bez pozivanja.
  3. Poziv main() funkcije unutar koje treba dodati logiku programa. { označava početak tijela funkcije main().
  4. Komentar. The C++ kompajler će ovo preskočiti.
  5. Deklaracija cjelobrojne varijable x i dodjeljivanje vrijednosti 1.
  6. Stvaranje do-while petlje. { označava početak tijela petlje.
  7. Za ispis vrijednosti varijable x uz drugi tekst na konzoli. Kraj je a C++ ključna riječ koja znači završni redak.
  8. Povećanje vrijednosti x za 1 nakon svake iteracije.
  9. Kraj tijela petlje. Testni izraz dodan je na kraj tijela petlje. Provjerava je li vrijednost x manja od 5.
  10. Funkcija main() trebala bi vratiti vrijednost ako program dobro radi.
  11. Kraj tijela funkcije main().

Primjer 2

#include <iostream>
using namespace std;
int main()
{
	int num, sum = 0;
	do {

		cout << "Enter a number: ";

		cin >> num;

		sum += num;

	} while (num != 0);
	cout << "Sum is " << sum;

	return 0;
}

Izlaz:

Do-While petlja

Evo snimke zaslona koda:

Do-While petlja

Code Objašnjenje:

  1. Uključivanje iostream datoteke zaglavlja u naš kod. Omogućit će nam čitanje s konzole i pisanje na nju.
  2. Uključivanje std imenskog prostora kako bi se njegove klase i funkcije koristile bez pozivanja.
  3. Poziv main() funkcije unutar koje treba dodati logiku programa.
  4. { označava početak tijela funkcije main().
  5. Deklariranje dvije cjelobrojne varijable, num i sum. Varijabla sum je inicijalizirana na 0.
  6. Stvaranje do-while petlje. { označava početak tijela petlje.
  7. Ispis teksta “Unesite broj:” na konzoli.
  8. Čitanje korisničkog unosa s konzole i pohranjivanje vrijednosti u varijablu num. Cin (konzolni unos) je funkcija koja čita korisnički unos.
  9. Dodavanje vrijednosti num vrijednosti sume i pohranjivanje rezultata u varijablu sum.
  10. } označava kraj tijela petlje. Testni izraz dodan je na kraj tijela petlje. Provjerava je li vrijednost koju je unio korisnik kako bi se uvjerio da nije 0. != nije jednako operatoru. Ako korisnik unese 0, petlja bi trebala prekinuti.
  11. Ispis vrijednosti varijabilnog zbroja na konzoli uz ostali tekst.
  12. Funkcija main() trebala bi vratiti vrijednost ako program dobro radi.
  13. Kraj tijela funkcije main().

Ugniježđena Do While petlja

In C++, moguće je stvoriti jednu do-while petlju unutar druge do-whole petlje. To rezultira ugniježđenom do-while petljom.

Sintaksa

do{
statement(s)
do{
statement(s)
}while(condition);
statement(s)
}while(condition);

Prva naredba do označava do dio vanjske do-while petlje.

Druga naredba do označava do dio unutarnje do-while petlje.

Prva naredba while označava testni uvjet za unutarnju petlju.

Druga naredba while označava testni uvjet za vanjsku petlju.

Kako radi ugniježđena petlja Do While

Ugniježđena do while petlja radi na sljedeći način:

Korak 1: Inicijalizacija se izvodi prvo i jednom.

Korak 2: Naredbe (do) se izvršavaju jednom.

Korak 3: Ispitni izraz je procjena kontrolom protoka.

Korak 4: Ako je istinito, izvršava se unutarnja petlja.

Korak 5: Izjave o ažuriranju su ažurirane.

Korak 6: Proces se ponavlja sve dok testni izraz ne postane lažan.

Korak 7: Kada testni izraz postane netočan, izlazi se iz unutarnje petlje i kontrola skače na vanjsku petlju.

Korak 8: Ispitni uvjeti se ponovno ocjenjuju.

Korak 9: Ako je istinito, izvod(i) se izvršavaju da vrate netočno.

Korak 10: Izvršenje petlje se zaustavlja i kontrola skače na izjave nakon petlje.

Primjer

#include <iostream>  
using namespace std;
int main() {
	int a = 1;
	do {
		int b = 1;
		do {
			cout << a << "\n";
			b++;
		} while (b <= 3);
		a++;
	} while (a <= 3);
}

Izlaz:

Ugniježđena Do While petlja

Evo snimke zaslona koda:

Ugniježđena Do While petlja

Code Objašnjenje:

  1. Uključivanje iostream datoteke zaglavlja u naš kod. Omogućit će nam čitanje s konzole i pisanje na nju.
  2. Uključivanje std imenskog prostora kako bi se njegove klase i funkcije koristile bez pozivanja.
  3. Poziv main() funkcije unutar koje treba dodati logiku programa. { označava početak tijela funkcije main().
  4. Deklaracija cjelobrojne varijable a i dodjeljivanje vrijednosti 1.
  5. Stvaranje vanjske do-while petlje. { označava početak tijela vanjske petlje.
  6. Deklaracija cjelobrojne varijable b i dodjeljivanje vrijednosti 1.
  7. Stvaranje unutarnje do-while petlje. { označava početak tijela unutarnje petlje.
  8. Za ispis vrijednosti varijable a na konzoli. "\n" je znak novog retka koji pomiče kursor miša u sljedeći red.
  9. Povećanje vrijednosti b za 1 nakon svake iteracije.
  10. Kraj tijela unutarnje petlje. Testni izraz dodan je na kraj tijela petlje. Provjerava je li vrijednost b manja ili jednaka 5.
  11. Povećanje vrijednosti a za 1 nakon svake iteracije.
  12. Kraj tijela vanjske petlje. Testni izraz dodan je na kraj tijela petlje. Provjerava je li vrijednost a manja ili jednaka 3.
  13. Kraj tijela funkcije main().

Pitanja i odgovori

Do-while petlja je kontrolna struktura koja izvršava svoje tijelo jednom, a zatim ga ponavlja sve dok je uvjet istinit. Uvjet se provjerava nakon svakog prolaza, a ne prije.

Petlja while provjerava uvjet prije izvršavanja tijela petlje, tako da se može izvršiti nula puta. Petlja do-while prvo izvršava tijelo petlje, a nakon toga provjerava uvjet, tako da se uvijek izvrši barem jednom.

Sintaksa je do { naredbe } while(uvjet);. Tijelo naredbe u zagradama se izvršava prvo, zatim se provjerava uvjet u zagradama, a petlja završava točkom-zarezom.

Koristite do-while petlju kada se kod mora izvršiti barem jednom bez obzira na uvjet, kao što je prikazivanje izbornika ili provjera korisničkog unosa.

Ugniježđena do-while petlja je do-while petlja smještena unutar druge do-while petlje. Unutarnja petlja dovršava sve svoje prolaze za svaki pojedinačni prolaz vanjske petlje.

AI asistenti poput GitHub Copilota generiraju do-while petlje iz komentara, pretvaraju između tipova petlji i označavaju uvjete koji bi mogli uzrokovati beskonačnu petlju.

Da. Alati pokretani umjetnom inteligencijom otkrivaju beskonačne petlje, pogreške koje se razlikuju od jedne za jednu i pogrešne uvjete petlje te predlažu jasniju logiku petlje, hvala.ping vaš C++ kod ispravno radi.

Da. Budući da se uvjet provjerava nakon tijela, do-while petlja uvijek izvršava svoje tijelo barem jednom, čak i ako je uvjet lažan pri prvoj provjeri.

Sažmite ovu objavu uz: