Lussen met while
Gebruik de pijlen om tussen de dia's te wisselen.
Tekst van deze dia
PROGRAMMEREN • 3E & 4E MIDDELBAAR
Lussen met while
Blijf herhalen zolang iets waar is
LES 12 • LEVEL 12
Tekst van deze dia
STARTVRAAG
Stel je dit eens voor…
Een herkenbaar probleem, een slimme oplossing.
HET VERHAAL
Een speler heeft drie levens. Het spel gaat door zolang die levens over heeft.
Wat als je vooraf niet weet hoeveel rondes er nodig zijn?
Tekst van deze dia
ONZE MISSIE
Vandaag kan jij…
Drie doelen. Helemaal haalbaar, stap voor stap.
1
while gebruiken met een voorwaarde
2
een teller correct aanpassen
3
oneindige lussen voorkomen
EINDMISSIE • MAAK ZELF IETS!
Tekst van deze dia
NIEUW IDEE
while = zolang als
Eerst begrijpen wat de instructie betekent.
De code wordt herhaald zolang de voorwaarde True blijft.
ONTHOUD
Verander iets in de lus, anders kan ze blijven doorgaan.
Tekst van deze dia
LIVE CODEREN
Van idee naar werkende code
Lees mee. Voorspel samen de uitvoer en voer dan uit.
les12_voorbeeld_a.py
levens = 3
while levens > 0:
print("Levens:", levens)
levens = levens - 1
print("Game over")
DENKVRAAG
Verander iets in de lus, anders kan ze blijven doorgaan.
Tekst van deze dia
RAAD DE UITVOER
Wat zal Python tonen?
Welke getallen verschijnen?
voorspel.py
teller = 1
while teller < 4:
print(teller)
teller += 1
DENK → OVERLEG → ANTWOORD
Tekst van deze dia
OPLOSSING
En dit verschijnt op het scherm!
Vergelijk met je voorspelling.
uitvoer (geen Python-code)
1
2
3
WAAROM?
Na het tonen wordt teller telkens één groter.
Tekst van deze dia
LEVEL UP
Een stopwoord gebruiken
Een extra Python-truc waarmee je meer kunt.
Met een while-lus kan iemand antwoorden blijven geven tot er “stop” staat.
TIP
Let erop dat de stopvoorwaarde ooit bereikt kan worden.
Tekst van deze dia
ZO WERKT HET
Nog een codevoorbeeld
Lees de code. Wat verandert er ten opzichte van het vorige voorbeeld?
les12_voorbeeld_b.py
antwoord = ""
while antwoord != "stop":
antwoord = input("Typ stop: ")
print("Goed gestopt!")
DE TRUC
Let erop dat de stopvoorwaarde ooit bereikt kan worden.
Tekst van deze dia
JIJ PROBEERT
Mini-opdrachten
Werk rustig. Test telkens na een kleine wijziging.
1
Tel af van 5 naar 1 met while.
2
Vraag telkens “nog eens?” tot iemand “nee” zegt.
3
Zorg dat het programma daarna netjes afsluit.
6–8 MINUTEN • EERST ZELF
Tekst van deze dia
DEBUGCHALLENGE
Python zegt: er is iets mis!
Speel detective: zoek de fout vóór je het programma uitvoert.
zoek_de_fout.py
teller = 1
while teller <= 5:
print(teller)
SPOTTED DE FOUT? • 90 SECONDEN
Tekst van deze dia
DEBUG-OPLOSSING
De verbeterde versie
Kleine correcties kunnen een groot verschil maken.
gecorrigeerd.py
teller = 1
while teller <= 5:
print(teller)
teller += 1
WAT WAS FOUT?
Zonder aangepaste teller blijft de voorwaarde altijd True.
Tekst van deze dia
EINDMISSIE
Ruimtelancering
Maak een aftelling die automatisch op nul eindigt.
1
Begin met teller = 5.
2
Toon de teller zolang deze groter is dan 0.
3
Verlaag met 1 na iedere ronde.
4
Toon “LANCERING!” na de lus.
EERST WERKEND → DAN MOOIER
Tekst van deze dia
VOORBEELD
Zo kan jouw oplossing eruitzien
Er bestaan meerdere correcte oplossingen. Vergelijk vooral de aanpak.
les12_oplossing.py
teller = 5
while teller > 0:
print(teller)
teller -= 1
print("LANCERING!")
Tekst van deze dia
EXTRA CHALLENGE
Klaar? Level up!
Kies één extra uitdaging of help je klasgenoot met een tip.
BONUSOPDRACHT
Laat de gebruiker de startwaarde kiezen met int(input()).
Het werkt — Test je programma met normale invoer.
Maak het sterker — Test ook eens een onverwacht antwoord.
Maak het eigen — Pas namen, teksten of vormgeving aan.
Tekst van deze dia
CHECK-OUT
Wat neem je mee?
Antwoord zonder spiekbriefje. Je hoeft niet alles al perfect te kunnen.
1
Wanneer gebruik je while i.p.v. for?
2
Wat doet teller += 1?
3
Waarom zijn oneindige lussen lastig?
VOLGENDE KEER Les 13: meerdere waarden in lijsten