Rekommenderas, 2024

Redaktionen

Skillnad mellan medan och gör-medan Loop

Iteration uttalanden tillåter uppsättningen instruktioner att utföras upprepade gånger tills villkoret inte visar sig falskt. Iteration uttalandena i C ++ och Java är, för slinga, medan slingan och gör medan slingan. Dessa uttalanden kallas vanligen slingor. Här är den huvudsakliga skillnaden mellan en stundslinga och ett ögonblick som är att medan ögonkontrollläget före loppets återupptagning kontrollerar tillståndet efter utförandet av uttalandena i slingan.

I denna artikel kommer vi att diskutera skillnaderna mellan "while" loop och "do-while" loop.

Jämförelsediagram

Grunder för jämförelsemedangöra medan
Allmän Formmedan (villkor) {
uttalanden; // slinga
}
do{
.
uttalanden; // slinga.
.
} medan (villkor)
KontrollvillkorI "while loop" visas det styrande tillståndet vid början av slingan.I "do-while" -locket visas det styrande tillståndet i loopens ände.
iterationerIterationerna inträffar inte om tillståndet vid den första iterationen förefaller felaktigt.Iterationen sker åtminstone en gång även om tillståndet är falskt vid den första iterationen.

Definition av medan Loop

Samtidigt slingan är den mest grundläggande slingan som finns tillgänglig i C ++ och Java. Att arbeta med en stundslinga är lika i både C ++ och Java. Den allmänna formen av while loop är:

 medan (villkor) {uttalanden; // slinga} 

Samtidigt slinga verifierar först tillståndet, och om villkoret är sant, det itererar slingan tills tillståndet visar sig vara falskt. Tillståndet i en ögla kan vara något booleskt uttryck. När uttrycket returnerar något värde som inte är noll, är villkoret "sant", och om ett uttryck returnerar ett nollvärde blir tillståndet "falskt". Om tillståndet blir sant, slår luset sig själv, och om villkoret blir falskt, passerar kontrollen till nästa linje i koden omedelbart följd av slingan.

Uttalandena eller loopens kropp kan antingen vara ett tomt påstående eller ett enda uttalande eller ett block av uttalanden.

Låt oss diskutera arbetet med en stundslinga. I exemplet nedan skrivs koden från 1 till 10.

 // exempel finns i Java. klass medan {public static void main (args []) {int n = 0; medan (n <= 10) {n ++; system.out.println ("n =" + n); }}} // utgång n = 1 n = 2 n = 3 n = 4 n = 5 n = 6 n = 7 n = 8 n = 9 n = 10 

Här är initialvärdet för 'n' 0, vilket gör att tillståndet i slingan är sant. Kontrollen kommer sedan in i kroppen under loop och värdet av 'n' ökas enligt det första uttalandet i kroppen av en stundslinga. Därefter skrivs värdet av 'n' och återigen går kontrollen tillbaka till tillståndet av en stundslinga, nu är värdet av 'n' 1 som återigen uppfyller villkoret och loopens kropp utförs igen.

Detta fortsätter tills villkoret är sant, så snart villkoret blir felaktigt avslutas slingan. Precis som för öglan kontrollerar även öglan slingan först villkoret och utför sedan slingkroppen.

Definition av do-while Loop

Liksom under en ögla, om det kontrollerande tillståndet endast blir falskt i den första iterationen, exekveras inte kroppen av underbandet alls. Men slingan är något annorlunda än slingan. Driftslussen utför karossens kropp åtminstone en gång, även om villkoret är felaktigt vid första försöket.

Den allmänna formen av do-while är som följer.

 gör {. uttalanden // loopband. . } medan (villkor) 

I en stundslinga uppträder loopbandet före det kontrollerande tillståndet och det villkorliga uttalandet ligger längst ned i slingan. Liksom i loopbandet, här kan också slingans kropp vara tomt, eftersom både C ++ och Java tillåter nulldeklarationer eller, det kan bara vara ett enda uttalande eller ett block av uttalanden. Villkoret här är också ett booleskt uttryck, vilket är sant för alla icke-nollvärden.

I en stundslinga når kontrollen först till uttalandet i kroppen av en stundslinga. Uttalandena i kroppen utförs först och sedan når kontrollen till tillståndets del av slingan. Villkoren är verifierad och om det är sant, är slingan itererad igen, och om villkoret är falskt, återgår kontrollen till nästa linje omedelbart efter slingan.

Låt oss förstå det genom att genomföra ovanstående exempel i stunden.

 // exempel finns i Java. klass medan {public static void main (args []) {int n = 1; gör {system.out.println ("n =" + n); n ++; } medan (n <10)}} // utgång n = 1 n = 2 n = 3 n = 4 n = 5 n = 6 n = 7 n = 8 n = 9 n = 10 

Här, värdet av n = 1 återgår kontrollen till slingans kropp, värdet av 'n' skrivs ut och sedan ökas dess värde. Därefter återgår kontrollen till tillståndet av do-while-loopen; villkoret är verifierat vilket visar sig sant för n = 1, så slingan är iterat igen och fortsätt tills villkoret blir falskt.

Viktiga skillnader mellan medan och gör-medan Loop

  1. Medanslingan kontrollerar tillståndet vid början av slingan och om tillståndet är tillfredsställt uttalande inuti slingan, exekveras. I ögonblickets ögla kontrolleras tillståndet efter utförandet av alla uttalanden i loopens kropp.
  2. Om tillståndet i ett ögonblick är falskt görs inte ett enda uttalande inuti slingan, och om villkoret i "do-while" -slingan är falskt, exekveras även slingens kropp åtminstone en gång då tillståndet testas.

Slutsats:

Både under och under-loop är iterationsförklaringen, om vi vill ha det först ska villkoret verifieras, och sedan måste uttalandena i slingan utföras då undergången används. Om du vill testa uppsägningstillståndet i slutet av slingan används då-och-slingan.

Top