Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer While, Do-While | Controle-instructies
C-Basis

bookWhile, Do-While

Stel je een situatie voor waarin het herhaaldelijk uitvoeren van bepaalde taken noodzakelijk is, zoals het uitlezen van gegevens van een sensor, het invoeren van wachtwoorden, of het tellen van woorden in een zin. In deze gevallen worden lussen gebruikt.

Lussen maken het mogelijk om specifieke codeblokken meerdere keren uit te voeren, of dit nu tientallen, honderden of zelfs duizenden keren is. Inzicht in het concept van lussen is essentieel binnen de programmering. Deze cursus behandelt de basislussen: de while-lus, de do-while-lus en de for-lus.

While-lus

Deze lus blijft uitvoeren zolang aan een specifieke voorwaarde wordt voldaan. Zodra niet meer aan de voorwaarde wordt voldaan, stopt de lus.

main.c

main.c

copy
123
while (condition) { // Loop body }

Een basisgebruik van een lus is het weergeven van het aantal herhalingen:

Main.c

Main.c

copy
1234567891011121314
#include <stdio.h> int main() { int iterations = 1; while (iterations <= 10) { printf("%d\n", iterations); iterations++; // `iterations = iterations + 1;` } return 0; }

Om deze lus te stoppen, is een beëindigingsvoorwaarde essentieel. Een eenvoudige methode is het gebruik van een teller om het aantal keren dat de lus wordt uitgevoerd bij te houden.

Note
Opmerking

Een iteratie verwijst naar een enkele cyclus binnen een lus. Dus als de lus het codeblok 10 keer uitvoert, zijn er 10 iteraties voltooid.

De regel iterations++; is essentieel omdat deze de teller (int iterations) bij elke doorgang verhoogt. De teller bepaalt vervolgens de voorwaarden om de lus te beëindigen.

Note
Opmerking

Het is noodzakelijk om voorwaarden te stellen om de lus te verlaten. Als dit niet gebeurt, ontstaat er een oneindige lus.

Main.c

Main.c

copy
12345678910111213141516
#include <stdio.h> int main() { int array[] = { 3, 6, 2, 134, 45, 2, 564, 8, 3, 531 }; int i = 0; // Index of array while (i < 10 ) { printf("Index of element: %d\tValue of element: %d\n", i, array[i]); i++; // `i = i + 1` } return 0; }

Let op de expressie array[i]. Hier geeft de variabele i de index aan van de elementen in array[].

Bij elke cyclus neemt de variabele i toe met 1. Dit betekent dat tijdens elke cyclus de expressie array[i] het volgende array-element benadert:

Het belangrijkste verschil tussen de do-while- en while-lus is dat de eerste altijd minimaal één keer wordt uitgevoerd, zelfs als de voorwaarde aanvankelijk onwaar is.

main.c

main.c

copy
123
do { // Do something } while (condition);

Dit type lus is handig voor het maken van eenvoudige gebruikersinterfaces. Bijvoorbeeld bij het vragen om een wachtwoord, omdat je hiermee kunt blijven vragen totdat de invoer geldig is. Een do-while-lus is hier ideaal, omdat de prompt minimaal één keer moet verschijnen, terwijl een while-lus geschikt is wanneer je alleen doorgaat als aan een voorwaarde is voldaan.

Main.c

Main.c

copy
123456789101112
#include <stdio.h> int main() { int i = 0; do { printf("Condition `i == 1` is false, because i = 0, but loop is working...\n"); } while (i == 1); printf("Loop is over\n"); return 0; }
question mark

Wat is de waarde van x bij de 6e iteratie?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 4. Hoofdstuk 5

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Suggested prompts:

Can you explain the difference between a while loop and a do-while loop with examples?

How does the counter help in terminating a loop?

Can you show how to use a loop to read data from a sensor?

Awesome!

Completion rate improved to 2.63

bookWhile, Do-While

Veeg om het menu te tonen

Stel je een situatie voor waarin het herhaaldelijk uitvoeren van bepaalde taken noodzakelijk is, zoals het uitlezen van gegevens van een sensor, het invoeren van wachtwoorden, of het tellen van woorden in een zin. In deze gevallen worden lussen gebruikt.

Lussen maken het mogelijk om specifieke codeblokken meerdere keren uit te voeren, of dit nu tientallen, honderden of zelfs duizenden keren is. Inzicht in het concept van lussen is essentieel binnen de programmering. Deze cursus behandelt de basislussen: de while-lus, de do-while-lus en de for-lus.

While-lus

Deze lus blijft uitvoeren zolang aan een specifieke voorwaarde wordt voldaan. Zodra niet meer aan de voorwaarde wordt voldaan, stopt de lus.

main.c

main.c

copy
123
while (condition) { // Loop body }

Een basisgebruik van een lus is het weergeven van het aantal herhalingen:

Main.c

Main.c

copy
1234567891011121314
#include <stdio.h> int main() { int iterations = 1; while (iterations <= 10) { printf("%d\n", iterations); iterations++; // `iterations = iterations + 1;` } return 0; }

Om deze lus te stoppen, is een beëindigingsvoorwaarde essentieel. Een eenvoudige methode is het gebruik van een teller om het aantal keren dat de lus wordt uitgevoerd bij te houden.

Note
Opmerking

Een iteratie verwijst naar een enkele cyclus binnen een lus. Dus als de lus het codeblok 10 keer uitvoert, zijn er 10 iteraties voltooid.

De regel iterations++; is essentieel omdat deze de teller (int iterations) bij elke doorgang verhoogt. De teller bepaalt vervolgens de voorwaarden om de lus te beëindigen.

Note
Opmerking

Het is noodzakelijk om voorwaarden te stellen om de lus te verlaten. Als dit niet gebeurt, ontstaat er een oneindige lus.

Main.c

Main.c

copy
12345678910111213141516
#include <stdio.h> int main() { int array[] = { 3, 6, 2, 134, 45, 2, 564, 8, 3, 531 }; int i = 0; // Index of array while (i < 10 ) { printf("Index of element: %d\tValue of element: %d\n", i, array[i]); i++; // `i = i + 1` } return 0; }

Let op de expressie array[i]. Hier geeft de variabele i de index aan van de elementen in array[].

Bij elke cyclus neemt de variabele i toe met 1. Dit betekent dat tijdens elke cyclus de expressie array[i] het volgende array-element benadert:

Het belangrijkste verschil tussen de do-while- en while-lus is dat de eerste altijd minimaal één keer wordt uitgevoerd, zelfs als de voorwaarde aanvankelijk onwaar is.

main.c

main.c

copy
123
do { // Do something } while (condition);

Dit type lus is handig voor het maken van eenvoudige gebruikersinterfaces. Bijvoorbeeld bij het vragen om een wachtwoord, omdat je hiermee kunt blijven vragen totdat de invoer geldig is. Een do-while-lus is hier ideaal, omdat de prompt minimaal één keer moet verschijnen, terwijl een while-lus geschikt is wanneer je alleen doorgaat als aan een voorwaarde is voldaan.

Main.c

Main.c

copy
123456789101112
#include <stdio.h> int main() { int i = 0; do { printf("Condition `i == 1` is false, because i = 0, but loop is working...\n"); } while (i == 1); printf("Loop is over\n"); return 0; }
question mark

Wat is de waarde van x bij de 6e iteratie?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 4. Hoofdstuk 5
some-alt