skillnad mellan för och medan loop

 för och medan loopi C++ och Java, iteration uttalanden, för loop, medan loop och gör-medan loop, tillåta uppsättning instruktioner som ska utföras upprepade gånger, tills villkoret är sant och avslutas så snart villkoret blir falskt. Villkor i iteration uttalanden kan fördefinieras som i för loop eller öppen som i medan loop.

det finns flera ’för’ loop variationer i C++ är underförstådda för att öka dess tillämplighet, kraft och flexibilitet. Till exempel tillåter for-slingan oss att använda mer än en variabel inuti slingan för att styra den och användningen av konvergeringsfunktion med ’för’ slinga. Omvänt, med medan loop vi inte kan använda många varianter, som måste användas med standardsyntaxen.

det finns några stora skillnader mellan för och medan slingor, som förklaras ytterligare med hjälp av ett jämförelsediagram.

innehåll: för Loop Vs medan Loop

  1. jämförelsetabell
  2. Definition
  3. viktiga skillnader
  4. slutsats

jämförelsetabell

grund för jämförelse för medan
deklaration för (initiering; tillstånd; iteration){
/ / body Of’ för ’ loop
}
medan (villkor) {
uttalanden; // kropp av slinga
}
Format initialisering, tillståndskontroll, iterationsdeklaration skrivs högst upp i slingan. endast initiering och tillståndskontroll görs längst upp i slingan.
använd ’för’ – slingan används endast när vi redan visste antalet iterationer. ’while’ – slingan används endast när antalet iterationer inte är exakt kända.
villkor om villkoret inte sätts upp i’ för ’ loop, sedan loop itererar oändliga tider. om villkoret inte sätts upp i’ while ’ loop, ger det kompileringsfel.
initialisering i’ för ’ – loop upprepas aldrig initialiseringen en gång gjort. I medan loop om initialisering görs under tillståndskontroll, görs initialisering varje gång slingan itererar.
Iteration statement i ’för’ loop iteration statement skrivs överst, därför körs endast efter att alla uttalanden i loop exekveras. i’ while ’ – slingan kan iterationsuttalandet skrivas var som helst i slingan.

Definition av för loop

i Java finns det två former av för loopar. Den första formen är ”traditionell” form och den andra är ”för-varje” form.

Syntax

den allmänna formen av traditionella för loop uttalande.

for (initialization; condition; iteration){//body of for loop}
  • initialisering: initialiseringen av den slingstyrande variabeln för för slinga utförs endast en gång under den första iterationen av slingan. Här initieras slingstyrningsvariabeln, ibland om slingvariabeln inte används igen någonstans i programmet och endast används som slingans kontrollvariabel, så deklareras den och initialiseras i ’för’ – slingan.
  • villkor: villkoret för ’för’ – slingan exekveras varje gång slingan itereras.
  • inkrement och Iteration: iteration-uttalandet är ett uttryck som ökar eller minskar den slingstyrande variabeln.

när slingan körs utförs dess initialiseringsvillkor först; då kontrolleras tillståndet. Om villkoret är uppfyllt, exekveras slingans kropp, då iterationsuttalandet exekveras. Därefter kontrolleras villkoret för att veta om slingan kommer att iterera ytterligare eller kommer att avslutas.

i Java kan initialiseringsuttalandet och iterationsuttalandet innehålla mer än ett uttalande. Varje uttalande separeras av andra med ett komma, i Java är ett komma en separator medan i C++ är ”komma” en operatör som kan användas i alla giltiga uttryck.

för-varje slinga och dess syntax

formuläret ”för-varje” är en förbättrad för slinga. Den allmänna formen av för – varje slinga är som följer.

for(type iter_variable: collection) statement-block

här anger ”typ” typen av iterationsvariabel, följt av iterationsvariabeln. Iterationsvariabeln kommer att ta emot elementet från samlingsvariabeln. Typen måste vara densamma som den typ av element som lagras i samlingsvariabeln. För – varje form av för loop automatiserar iterationen av slingan från början till slut åtkomst till värdena i sekventiell ordning.

exempel

det finns olika typer av samling som används med för loop. Låt oss diskutera det med en array som en samling.

public class Main{ public static void main(String args) { int array={10, 20, 30, 40, 50, 60}; int add=0; for( int c: array) { System.out.println( "value in c " + c); add = add+c; } System.out.println("additon of array elements is " +add); }}// outputvalue in c 10value in c 20value in c 30value in c 40value in c 50value in c 60additon of array elements is 210

här är ’c’ en iterationsvariabel; den tar emot värdena från array, en i taget, från det lägsta indexet till det högsta indexet i arrayen. Här upprepas slingan tills alla element i arrayen undersöks. Det är möjligt att avsluta slingan däremellan genom att använda ”break”. Ändringen i iterationsvariabeln påverkar emellertid inte matrisen, eftersom den bara är en skrivskyddad variabel.

Definition av While loop

while loop är den mest grundläggande slingan som finns i C++ och Java. Arbetet med en While loop är liknande i både C++ och Java.

Syntax

deklarationen av en While loop är som följer

while ( condition) {statements; //body of loop}

while loop kontrollerar initialt villkoret och kör sedan uttalandena tills villkoret i While loop visar sig vara sant. Villkoret i While loop kan vara vilket booleskt uttryck som helst. När ett uttryck returnerar ett icke-nollvärde är villkoret sant, och om uttrycket returnerar ett nollvärde blir villkoret falskt.

om villkoret blir sant, upprepar loop sig själv, och om villkoret blir falskt, går kontrollen till nästa rad i koden omedelbart följt av slingan. Uttalandena eller kroppsslingan kan antingen vara ett tomt uttalande eller ett enda uttalande eller ett block av uttalanden.

exempel

Låt oss diskutera arbetet med en While loop. I exemplet nedan kommer koden att skrivas ut från 1 till 10.

//example is in Java.public class Main{ public static void main (String args) { int n=0; while(n<10) { n++; System.out.println("n=" +n); } }}//outputn=1n=2n=3n=4n=5n=6n=7n=8n=9n=10

här är initialvärdet för ’ n ’ 0, vilket gör villkoret i While loop true. Kontrollen kommer sedan in i kroppen av while loop och värdet av ’n’ ökas enligt det första uttalandet i kroppen av en while loop.

värdet på ’n’ skrivs ut, sedan går kontrollen tillbaka till tillståndet i en While loop, nu är värdet på ’n’ 1 vilket igen uppfyller villkoret och slingans kropp exekveras igen. Detta fortsätter tills villkoret är sant, så snart tillståndet blir falskt avslutas slingan.

liksom’ för ’loop kan’ while ’ loop också initiera kontrollvariabeln längst upp i slingan, dvs under tillståndskontroll.

//for examplewhile((ch = getchar( ) ) != 'A'){System.out.println(" The input alphabet " +ch);}

här initieras kontrollvariabeln ’ch’ och slingans tillstånd verifieras längst upp i slingan.

Obs

kan det vara en för loop eller en while loop, om det bara finns ett uttalande i slingans kropp, krävs inte de lockiga hängslen i det tillståndet.

viktiga skillnader mellan för och medan loop

  1. In för loop, initialisering, tillståndskontroll och ökning eller minskning av iterationsvariabeln görs uttryckligen i syntaxen för en loop endast. Som mot, i While loop kan vi bara initiera och kontrollera tillstånd i loopens syntax.
  2. när vi är medvetna om antalet iterationer som måste ske i en körning av en slinga, använder vi för slinga. Å andra sidan, om vi inte är medvetna om antalet iterationer som måste ske i en slinga, använder vi while loop.
  3. om du misslyckas med att sätta villkor uttalande för loop, det kommer att leda till en oändlig iteration av en slinga. Däremot, om du misslyckas med att sätta condition statement I while loop kommer det att leda till ett kompileringsfel.
  4. initialiseringsuttalandet i syntaxen för för loop körs endast en gång i början av slingan. Omvänt, om While loop bär initialiseringsuttalande i sin syntax, kommer initialiseringsuttalandet i While loop att köras varje gång slingan itererar.
  5. iterationsuttalandet I for-slingan kommer att köras efter att body for loop körs. Tvärtom kan iterationsdeklarationen skrivas var som helst i kroppen av while loop så det kan finnas några uttalanden som körs efter utförandet av iterationsdeklaration i kroppen av while loop.

slutsats

for loop och while loop båda är iteration uttalande, men båda har sin distinkta funktion. For-slingan har all sin deklaration (initialisering, tillstånd, iteration) längst upp i slingans kropp. Negativt, i medan loop endast initialisering och tillstånd är på toppen av kroppen av slingan och iteration kan skrivas var som helst i kroppen av slingan.