V tem članku bomo razpravljali o razlikah med “while” zanko in “do-while” zanko.
Primerjalna tabela
Podlaga za primerjavo | medtem | do-while |
---|---|---|
Splošni obrazec | medtem ko (pogoj) { izjave; // telo zanke } | do { . izjave; // telo zanke. . } medtem ko (pogoj); |
Pogoj krmiljenja | V "while" zanki se nadzorni pogoj prikaže na začetku zanke. | V zanki "do-while" se na koncu zanke prikaže stanje krmiljenja. |
Ponovitve | Ponovitve se ne pojavijo, če je pogoj na prvi ponovitvi napačen. | Ponovitev se zgodi vsaj enkrat, tudi če je pogoj na prvi ponovitvi napačen. |
Opredelitev Loop
Zanka while je najbolj temeljna zanka, ki je na voljo v C ++ in Java. Delovanje zanke while je podobno v obeh jezikih C ++ in Java. Splošna oblika zanke je:
while (pogoj) {stavki; // telo zanke}
Časovna zanka najprej preveri stanje in če je pogoj res, potem ponavlja zanko, dokler pogoj ne postane napačen. Pogoj v zanki while je lahko katerikoli logični izraz. Če izraz vrne katero koli vrednost, ki ni nič, potem je pogoj »true« in če izraz vrne ničelno vrednost, pogoj postane »false«. Če pogoj postane res, potem se zanka ponovi, in če pogoj postane napačen, potem kontrolnik preide v naslednjo vrstico kode, ki ji takoj sledi zanka.
Stavki ali telo zanke je lahko prazen stavek ali en stavek ali blok stavkov.
Pogovorimo se o delovanju zanke while. V spodnjem primeru bo koda natisnjena od 1 do 10.
// primer je v Javi. class while {javni statični void main (args []) {int n = 0; medtem ko (n <= 10) {n ++; system.out.println ("n =" + n); }}} // izhod n = 1 n = 2 n = 3 n = 4 n = 5 n = 6 n = 7 n = 8 n = 9 n = 10
Tukaj je začetna vrednost 'n' 0, ki spremeni stanje v zanki while. Kontrolnik nato vstopi v telo zanke while in vrednost 'n' se poveča glede na prvi stavek v telesu zanke while. Nato se natisne vrednost 'n' in kontrolnik se vrne nazaj v stanje "while" zanke, zdaj je vrednost 'n' 1, ki ponovno izpolnjuje pogoj, in telo zanke se ponovno izvede.
To se nadaljuje, dokler ni pogoj resničen, takoj ko pogoj postane napačen. Kot za zanko tudi loop zanka najprej preveri stanje in nato izvede telo zanke.
Opredelitev do-while Loop
Kot v while zanki, če nadzorni pogoj postane napačen samo v prvi iteraciji, potem telo zanke se sploh ne izvede. Toda zanka do-while je nekoliko drugačna od zanke while. Zanka do-while izvaja telo zanke vsaj enkrat, tudi če je pogoj ob prvem poskusu napačen.
Splošna oblika do-while je naslednja.
do {. izjave // telo zanke. . } medtem ko (pogoj);
V zanki do-while se telo zanke pojavi pred kontrolnim stanjem in pogojno stavek je na dnu zanke. Kot v while zanki, je lahko tudi telo zanke prazno, saj C ++ in Java omogočata ničelne izjave ali pa je lahko samo en stavek ali blok stavkov. Pogoj tukaj je tudi boolean izraz, ki velja za vse vrednosti, ki niso nič.
V zanki do-while nadzor najprej doseže stavek v telesu zanke do-while. Izjave v telesu se izvedejo najprej, nato pa kontrolnik doseže pogojni del zanke. Pogoj je preverjen in, če je res, se zanka ponovno ponovi in če je pogoj napačen, se nadzor nadaljuje v naslednjo vrstico takoj po zanki.
Da ga razumemo z izvajanjem zgornjega primera v do-while.
// primer je v Javi. class while {javni statični void main (args []) {int n = 1; do {system.out.println ("n =" + n); n ++; } medtem ko (n <10)}} // izhod n = 1 n = 2 n = 3 n = 4 n = 5 n = 6 n = 7 n = 8 n = 9 n = 10
Tukaj se vrednost n = 1 nadaljuje v telo zanke, natisne se vrednost 'n' in potem se njegova vrednost poveča. Potem se nadzor nadaljuje v stanje zanke do-while; pogoj se preveri, kar se izkaže za resnično za n = 1, tako da se zanka ponovno ponovi in nadaljuje, dokler pogoj ne postane napačen.
Ključne razlike med časom in do-medtem ko Loop
- Zanka while preveri stanje ob zagonu zanke in če je pogoj izpolnjen stavek znotraj zanke, se izvrši. V zanki do-while se pogoj preveri po izvedbi vseh stavkov v telesu zanke.
- Če je pogoj v while zanki napačen, se v zanki ne izvede noben posamezen stavek in če je pogoj v zanki "do-while" napačen, potem se tudi telo zanke izvede vsaj enkrat, nato pa se pogoj preskusi.
Sklep:
Tako while kot do-while zanke so izjavo o ponovitvi, če želimo, da se najprej preveri stanje, nato pa morajo biti stavki v zanki izvršeni, potem pa se uporablja zanka while. Če želite preizkusiti prekinitveno stanje na koncu zanke, se uporabi zanka do-while.