Uvod v zanke v C ++

V tem članku bomo obravnavali zanke v C ++, skupaj z uvajanjem in različnimi vrstami zank v programiranju C ++. Pri programiranju obstajajo časi, ko potrebujete, da se določen blok kode izvede kar nekajkrat. Zaradi tega nam programske jezike zagotavljajo nadzorne strukture. Na splošno se izjave v kodi izvajajo ena za drugo, torej zaporedno. Toda za spremembo tega zaporednega pretoka programa imamo na voljo zanke, ki nam omogočajo, da spremenimo izvedbeno pot.

V programskem svetu je zanka krmilna struktura, ki se uporablja, kadar želimo večkrat izvesti blok kode. Običajno še naprej deluje, dokler ni izpolnjen kakšen končni pogoj.

Če ne bi imeli zank, bi morali uporabiti iterativno metodo za tiskanje ponavljajočega se bloka stavkov, ki bi bil videti nekako takole:

#include
using namespace std;
int main()
(
cout << " Good morning \n";
cout << " Good morning \n";
cout << " Good morning \n";
cout << " Good morning \n";
cout << " Good morning \n";
)

Izhod:

Dobro jutro
Dobro jutro
Dobro jutro
Dobro jutro
Dobro jutro

V tem primeru smo petkrat natisnili »Dobro jutro« s ponavljanjem istega niza vrstic.

Zanka ima določen nabor navodil. V zanki s števcem preverimo stanje izvedbe zanke. V primerih, ko števec še ni dosegel želene številke, se krmilnik vrne na prvo navodilo v zaporedju navodil in nadaljuje s ponovitvijo izvajanja stavkov v bloku. Če je števec dosegel zahtevano številko, to pomeni, da je pogoj izpolnjen, in nadzor preide iz zanke stavkov in pride zunaj zanke, na preostali blok kode.

Vrste zank v C ++

Zdaj, ko smo videli, kako Loop deluje, nam bo bolj jasno, da bomo preučili vrste zank tam zunaj. V programiranju C ++ imamo na C ++ tri vrste zank:

  • Za zanko
  • Medtem ko je zanka
  • Ali medtem Loop

Za zanko

Zanka je zanka, ki jo nadzira vstop, kar pomeni, da je stanje, ki smo ga določili, preverjeno pred vstopom v blok zanke. Je struktura nadzora ponovitve. Zanka, ki smo jo napisali, se izvaja določeno številokrat.

Za nadzor zanke uporabljamo spremenljivko zanke v For zanki. Ta spremenljivka se najprej inicializira do neke vrednosti, nato izvedemo preverjanje te spremenljivke in jo primerjamo s številsko spremenljivko, na koncu pa posodobimo spremenljivko zanke.

Sintaksa:

for (inicializacija izraz; testni izraz; posodobitev izraza)
(
// stavki, ki jih je treba izvesti v telesu zanke
)
Izraz inicializacije:

Tu inicializiramo spremenljivko zanke na določeno vrednost. Na primer, int i = 1;

Izražanje preizkusa:

Tukaj zapišemo stanje testa. Če je pogoj izpolnjen in se vrne res, izvedemo telo zanke in posodobimo spremenljivko zanke. V nasprotnem primeru zapustimo zanko For. Primer za testno izražanje je i <= 5;

Posodobi izraz:

Ko je telo zanke izvedeno, povečamo ali zmanjšamo vrednost spremenljivke zanke v izrazu za posodobitev. Na primer, i ++;

Poglejmo primer zanke For:

#include
using namespace std;
int main()
(
for (int i = 1; i <= 5; i++)
(
cout << " Good morning \n";
)
return 0;
)

Izhod:

Dobro jutro
Dobro jutro
Dobro jutro
Dobro jutro
Dobro jutro

Medtem ko je zanka

Čeprav je zanka tudi zanka z nadzorom vnosa, kjer preverimo stanje, ki smo ga določili, preden zaženemo zanko. Razlika je v tem, da uporabljamo za zanke, ko vemo, kolikokrat mora telo zanke teči, medtem ko uporabljamo, medtem ko zanke uporabljamo v okoliščinah, ko prej ne vemo natančno, kolikokrat mora telo zanke narediti teči. Izvedba zanke se konča na podlagi preskusnega pogoja.

Sintaksa:

inicializacijski izraz;
medtem ko (test_izraž)
(
// stavki, ki jih je treba izvesti v telesu zanke
update_expression;
)

Sintaksa zank se razlikuje le v umestitvi treh izrazov.

Oglejmo si primer zanke while:

#include
using namespace std;
int main()
(
int i = 0; // initialization expression
while (i < 5) // test expression
(
cout << "Good morning\n";
i++; // update expression
)
return 0;
)

Izhod:

Dobro jutro
Dobro jutro
Dobro jutro
Dobro jutro
Dobro jutro

Ali medtem Loop

Naredite, medtem ko je zanka izhodno nadzorovana zanka, kar pomeni, da je stanje preskusa preverjeno po izvedbi zanke na koncu telesa zanke. Zato telo vsaj enkrat izvede, ne glede na rezultat preskusnega stanja, ali je resničen ali napačen. Zgodi se, da je to najpomembnejša razlika med tem, ko zanka in storite. Medtem ko je zanka, se stanje predhodno preizkusi, medtem ko je stanje, medtem ko je zanka, preverjeno na koncu telesa zanke.

Sintaksa:

inicializacijski izraz;
stori
(
// stavki, ki jih je treba izvesti v telesu zanke
update_expression;
) while (test_izraž);

Medtem, ko zanko končamo, telo zanke končamo s podpičjem, medtem ko drugi dve zanki nimata podpičja, ki bi končalo telo njihovih zank.

#include
using namespace std;
int main()
(
int i = 2; // initialization expression
do
(
cout << " Good morning\n";
i++; // update expression
) while (i < 1); // test expression
return 0;
)

Izhod:

Dobro jutro

V zgornji kodi testni pogoj pravi, da bi moral biti manjši od 1 (i <1), vendar se zanka še vedno izvrši vsaj enkrat, preden preveri stanje, torej nam enkrat daje izhod "Dobro jutro".

Neskončna zanka

Neskončna zanka ali neskončna zanka je zanka, ki nima ustreznega pogoja za izhod zanke, zaradi česar teče neskončno. To se zgodi, če pogoj preizkusa ni pravilno napisan in trajno oceni kot resničen. To je ponavadi napaka v programu.

#include
using namespace std;
int main ()
(
int i;
for ( ; ; )
(
cout << "This loop runs indefinitely.\n";
)
)

Izhod:

Ta zanka deluje v nedogled.
Ta zanka deluje v nedogled.
Ta zanka deluje v nedogled.

V tem primeru nismo omenili nobenega preizkusnega izraza in smo ga pustili prazno; zato bo ta zanka delovala v nedogled, dokler se ročno ne prekine.

Zaključek - zanke v C ++

V tem članku smo videli različne zanke, ki se uporabljajo v C ++. Vsaka od teh zank ima različne prednosti. Loop uporabljamo, kadar vemo, kolikokrat moramo zagnati zanko, medtem ko zanko uporabljamo, ko poznamo pogoj za prenehanje, vendar ne poznamo natančnega števila iteracij in uporabljamo do, medtem ko zanko potrebujemo kodo izvajati vsaj enkrat kot v menijskih programih.

Priporočeni članki

To je vodnik za zanke v C ++. Tu razpravljamo tudi o različnih vrstah zank v C ++ s skladnjo in primerom. Za več informacij si lahko ogledate tudi naslednje članke -

  1. Primeri funkcij nizov C ++
  2. Vrste operaterjev v C ++
  3. Razlika med C ++ in Java
  4. Uvod v Matlab
  5. Zvezdni vzorci v c ++
  6. Zanke v VBScript s primeri
  7. Spoznajte različne vrste zank v PowerShellu