👀 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
nals telvariabele ziet dat er als volgt uit:n = 0 while n < 10: #print(n) n += 1Merk op dat we onder de while-lus
n+=1schrijven omnmet 1 te verhogen. De voorwaarde van de while-lus wordt na het uitvoeren van den+=1code telkens opnieuw gecontroleerd om na te gaan ofnnog 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 += 1is 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
nin het volgend stukje code achtereenvolgens de waarden 0, 3, 6, 9 enzovoort.n = 0 while n < 20: #print(n) n += 3Deze 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 -= 1Deze 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 += 1In bovenstaande code voegen we een variabele
somtoe 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 += 1Bij elke iteratie van de lus, wordt de
somvariabele nu terug op 0 gezet en dan wordt ernbij opgeteld. Hierdoor is de waarde vansomaltijd gelijk aan die vannbij het printen.