👀 Voorbeeld - Telvariabele
In een while-lus wordt er vaak gewerkt met een telvariabele. De waarde van een telvariabele is een getal dat steeds verhoogd wordt binnen de code van een while-lus om te controleren hoeveel iteraties er gebeuren. Met
n
als telvariabele ziet dat er als volgt uit:n = 0 while n < 10: #print(n) n += 1
Merk op dat we onder de while-lus
n+=1
schrijven omn
met 1 te verhogen. De voorwaarde van de while-lus wordt na het uitvoeren van den+=1
code telkens opnieuw gecontroleerd om na te gaan ofn
nog steeds kleiner is dan 10. De lus wordt in dit geval dus 10 keer herhaald (n=0, n=1, n=2, n=3, n=4, n=5, n=6, n=7, n=8, n=9
).Verwijder de # voor de print-lijn om de waarde van n te zien in elke iteratie. Je kan dit proberen in de sandbox.
💡 Hint
Het teken
+=
komt in dit programma twee keer voor. Het telt een waarde op bij de gegeven variabele:n += 1
is hetzelfde alsn = n + 1
. Hetzelfde geldt voor-=
,*=
, enz.
🧠Denkoefening - Hoeveel herhalingen? Deel 1
Hoeveel keer wordt de lus uitgevoerd in het volgende stukje code?
n = 3 while n < 12: #print(n) n += 1
👀 Voorbeeld - Grotere sprongen of achteruit
Het is niet zo dat de telvariabele altijd met 1 verhoogd moet worden. Het kan ook zo zijn dat je grotere sprongen wil maken, bijvoorbeeld door telkens met 3 te verhogen. Zo heeft
n
in het volgend stukje code achtereenvolgens de waarden 0, 3, 6, 9 enzovoort.n = 0 while n < 20: #print(n) n += 3
Deze lus wordt 7 keer herhaald (
n=0, n=3, n=6, n=9, n=12, n=15, n=18
).Het is zelfs mogelijk om met de telvariabele af te tellen in plaats van op te tellen.
n = 5 while n >= 0: #print(n) n -= 1
Deze lus wordt 6 keer herhaald (
n=5, n=4, n=3, n=2, n=1, n=0
).
🧠Denkoefening - Hoeveel herhalingen? Deel 3
Hoeveel keer wordt de lus uitgevoerd in het volgende stukje code?
n = 1 while n <= 100: #print(n) n += 5
🧠Denkoefening - Tellen
Probeer in je eigen woorden te beschrijven wat het volgende programma doet.
n = 1 while n <= 10: #print(n) n += 1
🧠Denkoefening - Hoeveel herhalingen? Deel 2
Hoeveel keer wordt de lus uitgevoerd in het volgende stukje code?
n = 1 while n <= 10: #print(n) n += 1
👀 Voorbeeld - Som
Tellen op zich is nog niet zo interessant. In dit voorbeeld tellen we tot 10 en tonen we tegelijkertijd de som van alle getallen tot het huidige getal.
n = 1 som = 0 while n <= 10: som += n print(n, som) n += 1
In bovenstaande code voegen we een variabele
som
toe die de som tot nu toe bevat. In het begin (voor de while-lus) is de huidige som 0.Programma’s met een lus bevatten vaak een variabele die een beginwaarde toegekend krijgt vóór de lus. Die waarde wordt dan aangepast tijdens het uitvoeren van iteraties van de lus.
Onderstaande code toont wat er gebeurt als we deze beginwaarde in de lus toekennen in plaats van ervoor.
n = 1 while n <= 10: som = 0 som += n print(n, som) n += 1
Bij elke iteratie van de lus, wordt de
som
variabele nu terug op 0 gezet en dan wordt ern
bij opgeteld. Hierdoor is de waarde vansom
altijd gelijk aan die vann
bij het printen.