Een programma is een set instructies geschreven in een programmeertaal om een bepaalde taak uit te voeren. Het kan een logische bewerking of een wiskundige bewerking zijn. Over het algemeen worden de instructies in het programma achter elkaar uitgevoerd. Soms is het nodig om steeds opnieuw een reeks uitspraken uit te voeren. De controlestructuren worden gebruikt om deze taak te bereiken. Twee ervan zijn voor en while loop. Deze structuren helpen een reeks codes uit te voeren totdat de gegeven voorwaarde waar is. De syntaxis van de for-lus bestaat uit initialisatie, testexpressie en update-expressie. De syntaxis van de while-lus bevat de testexpressie. Dit artikel bespreekt het verschil tussen voor en while-lus. De belangrijk verschil tussen voor en while-lus is dat de for-lus kan worden gebruikt als het aantal iteraties bekend is en de while-lus kan worden gebruikt als het aantal iteraties niet bekend is.
1. Overzicht en belangrijkste verschil
2. Wat is voor Loop
3. Wat is while Loop
4. Overeenkomsten Tussen voor en while Loop
5. Vergelijking zij aan zij - voor vs while Loop in tabelvorm
6. Samenvatting
De for-lus wordt gebruikt in veel programmeertalen, zoals C, Java enz. Het wordt gebruikt om een reeks instructies meerdere keren uit te voeren. De syntaxis van de for-lus is als volgt.
voor (initialisatie, testexpressie, update)
// statements in de for-lus
De initialisatie-expressie wordt slechts eenmaal uitgevoerd. Vervolgens wordt de testexpressie geëvalueerd. De testexpressie kan variabelen, waarden, constante en operators bevatten. Het is een Booleaanse uitdrukking. Als de geëvalueerde expressie waar is, wordt de code in de for-lus uitgevoerd. Nadat het einde van de lus is bereikt, wordt de update-expressie uitgevoerd. Het kan een verhoging of een afname zijn. Opnieuw wordt de testexpressie gecontroleerd. Als de geëvalueerde expressie waar is, worden de instructies binnen de for-lus uitgevoerd. Aan het einde van de lus wordt de update-uitdrukking uitgevoerd. Dit proces wordt herhaald totdat de testexpressie false is. Wanneer de testexpressie false is, wordt de for-lus beëindigd en wordt het besturingselement doorgegeven aan de volgende instructie na de for-lus.
Figuur 01: Een programma met for-lus om de som van 5 getallen te berekenen
Het bovenstaande programma is om de sommatie te vinden van de eerste vijf getallen, die 1,2,3,4 en 5 zijn. In de for-lus is i 1. Het is minder dan 5. Dus de som wordt berekend. Aanvankelijk is de som 0. Deze wordt toegevoegd aan i die 1 is. Het totaal wordt toegewezen aan variabele som. Nu is de som 1. Vervolgens wordt de update-expressie geëvalueerd. De i wordt met één opgehoogd. Nu is i 2. Het is minder dan 5. Dus de som is berekend. De vorige sum-waarde is 1 en deze wordt toegevoegd aan i-waarde, die nu 2 is. Nu is de som 3. De updatelexpressie wordt geëvalueerd en i wordt met 1 opgehoogd. Nu is het 3. Dit proces herhaalt zich. Wanneer ik 6 wordt, wordt de uitdrukking false omdat 6 niet gelijk is aan of minder dan 5. Daarom eindigt de for-lus. Uiteindelijk wordt de som van alle vijf getallen op het scherm afgedrukt.
De while-lus voert de doelinstructies uit zolang de opgegeven voorwaarde waar is. De syntaxis van de while-lus is als volgt.
while (test expression)
// statements in de while-lus
De while-lus bevat een testexpressie. Het is een Booleaanse uitdrukking. Als de geëvalueerde uitdrukking waar is, worden de instructies in de while-lus uitgevoerd. Aan het einde van deze verklaringen wordt de testexpressie opnieuw geëvalueerd. Dit proces wordt herhaald totdat de testuitdrukking onwaar wordt. Wanneer het false wordt, eindigt de while-lus en wordt het besturingselement doorgegeven aan de instructie na de while-lus.
Figuur 02: Een programma met while-lus om de som van 5 getallen te berekenen
Volgens het bovenstaande programma wordt de som geïnitialiseerd naar 0 en i geïnitialiseerd naar 1. In de while-lus wordt de i-waarde geëvalueerd. Het is minder dan 5. Dus, de som is berekend. De beginwaarde van de som is 0. Deze wordt toegevoegd aan i waarde 1. Nu is de som gelijk aan 1. Vervolgens wordt de i-waarde met één opgehoogd. Nu is de waarde 2. Het is minder dan 5. Dus de som wordt berekend. De huidige som die 1 is, wordt opgeteld bij de i-waarde, die nu 2 is. Nu is de som 3. De i-waarde wordt opnieuw verhoogd. De i-waarde is nu 3. Dit proces herhaalt zich. Wanneer ik waarde 6 wordt, wordt de uitdrukking onwaar, omdat deze niet kleiner is dan of gelijk is aan 5. Dus eindigt de while-lus. Ten slotte wordt de somwaarde op het scherm afgedrukt. Als er geen toename was, zoals i ++, dan blijft de i-waarde gelijk aan 1. Dit is minder dan 5. De voorwaarde is altijd waar. Het zal dus een oneindige lus zijn.
voor vs while Loop | |
De for-lus is een herhalingsbesturingsstructuur waarmee de programmeur efficiënt een lus kan schrijven die een bepaald aantal keren moet worden uitgevoerd. | De while-lus is een herhalingscontrolestructuur die doelinstructies uitvoert zolang de gegeven voorwaarde waar is. |
Gebruik | |
De for-lus kan worden gebruikt als het aantal iteraties bekend is. | De while-lus kan worden gebruikt als het aantal iteraties niet bekend is. |
initialisatie | |
De initialisatie gebeurt eenmaal in lus. | In de while-lus, als de initialiseringsinstructie zich binnen de lus bevindt, wordt de initialisatie elke keer uitgevoerd als de lus wordt herhaald. |
Bij het programmeren is het soms nodig om een set verklaringen meerdere keren te herhalen. Er zijn herhalingscontrolestructuren om deze taken te bereiken. Twee ervan zijn voor en while loop. Het verschil tussen voor en while-lus is dat de for-lus wordt gebruikt wanneer het aantal iteraties bekend is en de while-lus wordt gebruikt wanneer het aantal iteraties niet bekend is.
1.Point, zelfstudies. "Voor lus in C.", Tutorials Point, 8 januari 2018, www.tutorialspoint.com/cprogramming/c_for_loop.htm.
2.Point, zelfstudies. "While loop in C.", Tutorials Point, 8 januari 2018, www.tutorialspoint.com/cprogramming/c_while_loop.htm.