Odporúčaná, 2019

Redakcia Choice

Rozdiel medzi chvíľou a do-while Loop

Iteračné vyhlásenia umožňujú, aby bol súbor pokynov vykonaný opakovane, kým sa stav nevykoná nesprávne. Iteračné vyhlásenia v jazykoch C ++ a Java sú pre slučku v smere slučky a slučky. Tieto vyhlásenia sa bežne nazývajú slučky. Tu je hlavný rozdiel medzi cyklovým cyklom while while while loop je to, že zatiaľ čo slučka kontroluje stav pred iteráciou slučky, zatiaľ čo do-while slučka kontroluje stav po vykonaní vyhlásení vo vnútri slučky.

V tomto článku budeme diskutovať o rozdieloch medzi slučkou "while" a "do-while".

Porovnávacia tabuľka

Základ pre porovnaniezatiaľ čodo-while
Všeobecný formulárzatiaľ čo (podmienka) {
vyhlásenia; // body slučky
}
robiť {
,
vyhlásenia; // body slučky.
,
} zatiaľ čo (stav);
Ovládanie podmienokPri slučke "while" sa na začiatku slučky zobrazí kontrolný stav.Pri slučke "do-while" sa na koniec slučky objaví riadiaci stav.
iterácieIterácie sa nevyskytujú, ak sa stav na prvej iterácii zobrazí ako nepravdivý.Iterácia sa vyskytuje aspoň raz, aj keď je podmienka v prvej iterácii falošná.

Definícia momentu slučky

Momentová slučka je najzákladnejšou slučkou, ktorá je k dispozícii v jazykoch C ++ a Java. Funkcia momentálnej slučky je podobná ako v C ++, tak aj v Java. Všeobecná forma slučky while je:

 zatiaľ čo (podmienka) {statements; // telo slučky} 

Momentová slučka najprv overí stav a ak je podmienka pravdivá, potom opakuje slučku, kým sa stav nezmení. Podmienkou v okruhu while môže byť akýkoľvek booleovský výraz. Keď výraz vráti akúkoľvek nenulovú hodnotu, potom je podmienka "true" a ak výraz vráti nulovú hodnotu, podmienka sa stane "falošnou". Ak sa podmienka stane pravdivou, potom sa slučka opakuje sama a ak sa podmienka stane nepravdivou, riadiaca jednotka prejde na ďalší riadok kódu bezprostredne nasledujúci slučkou.

Príkazy alebo telo slučky môžu byť prázdne vyhlásenie alebo jediné vyhlásenie alebo blok výkazov.

Poďme diskutovať o fungovaní chvíľkového cyklu. V nižšie uvedenom príklade bude kód tlačiť od 1 do 10.

 // príklad je v jazyku Java. trieda {public static void main (args []) {int n = 0; zatiaľ čo (n <= 10) {n ++; system.out.println ("n =" + n); }}} // výstup n = 1 n = 2 n = 3 n = 4 n = 5 n = 6 n = 7 n = 8 n = 9 n = 10 

Tu je počiatočná hodnota 'n' 0, ktorá mení podmienku v okruhu while true. Ovládanie potom vstupuje do tela slučky while a hodnota 'n' sa zvyšuje podľa prvého príkazu v slučke body while. Potom sa vytlačí hodnota 'n' a opäť sa ovládací prvok vráti späť do stavu momentálnej slučky, teraz je hodnota 'n' 1, ktorá opäť spĺňa podmienky a telo slučky sa opäť vykoná.

To pokračuje až do stavu, keď je podmienka pravdivá, hneď ako sa stane falošnou podmienkou, že je slučka ukončená. Rovnako ako pri slučke momentálna slučka najprv skontroluje stav a potom vykoná telo slučky.

Definícia do-while Loop

Rovnako ako pri slučke while, ak sa riadiaca podmienka stane len falošnou v prvej iterácii, potom sa telo momentovej slučky nevykoná vôbec. Ale do-while slučka je trochu iná ako pri slučke. Do-while slučka vykoná telo slučky najmenej raz, aj keď je podmienka falošná pri prvom pokuse.

Všeobecná forma do-while je nasledovná.

 do {. vyhlásenia // telo slučky., } zatiaľ čo (stav); 

V do-while smyčke, telo slučky sa vyskytuje pred kontrolným stavom a podmienené vyhlásenie je v spodnej časti slučky. Rovnako ako v slučke while, tu tiež môže byť telo slučky prázdne, pretože C ++ a Java umožňujú null vyhlásenia, alebo môže existovať iba jediný príkaz alebo blok výkazov. Podmienkou je aj booleovský výraz, ktorý platí pre všetky nenulové hodnoty.

Pri opakovanom okruhu sa kontrola najprv dostane k údaju v tele zotrvačnosti. Príkazy v tele sa najprv vykonajú a potom sa kontrola dostane do kondičnej časti slučky. Podmienka je overená a ak je to pravda, opakuje sa opakovanie cyklu a ak je podmienka nepravdivá, potom sa riadok obnoví na nasledujúci riadok ihneď po smyčke.

Pochopme to tým, že implementujeme vyššie uvedený príklad.

 // príklad je v jazyku Java. trieda {public static void main (args []) {int n = 1; do {system.out.println ("n =" + n); n ++; } zatiaľ čo (n <10)}} // výstup n = 1 n = 2 n = 3 n = 4 n = 5 n = 6 n = 7 n = 8 n = 9 n = 10 

Tu sa hodnota n = 1 obnoví na telo slučky, hodnota 'n' sa vytlačí a potom sa jej hodnota zvýši. Potom sa kontrola obnoví na stav slučky do-while; podmienka je overená, čo je pravdivé pre n = 1, takže opakujúca sa opakuje a pokračuje až kým sa stav nestane falošným.

Kľúčové rozdiely medzi chvíľou a do-while Loop

  1. Momentová slučka kontroluje stav pri spustení slučky a ak je splnená podmienka vo vnútri slučky, vykoná sa. V okruhu do-while sa podmienka skontroluje po vykonaní všetkých príkazov v telese slučky.
  2. Ak je podmienka v kruhu momentu falošná, nie je vykonané žiadne jediné vyhlásenie vnútri slučky a ak je stav v slučke "do-while" falošný, tak aj telo slučky sa vykoná aspoň raz, potom sa testuje podmienka.

záver:

Obe aj keď do-while loop sú vyhlásenie iterácie, ak to chceme najskôr, podmienka by mala byť overená a potom musia byť spustené príkazy vo vnútri slučky, potom sa používa slučka while. Ak chcete otestovať stav ukončenia na konci slučky, použije sa slučka do-while.

Top