Skip to content

Herhalen van code

In de vorige opdracht zagen we dat code van boven naar beneden uitgevoerd word. Echter, als iets meer dan één keer uitgevoerd moet worden is het niet handig om steeds die code te kopieren. Daarom kunnen we gebruik maken van "while-loops".

De While-Loop

Een while-loop (of while-statement) is een manier om een stuk code te laten herhalen zolang er aan een bepaalde voorwaarde wordt voldaan.

Open het bestand 2_while_loop.py in je ontwikkelomgeving:

2_while_loop.py
1
2
3
4
x = 1
while x < 10:
    print(x)
    x = x + 1
Variabelen gebruiken (net als bij wiskunde)

We kunnen variabelen gebruiken om waarden bij te houden en veranderen. Bijvoorbeeld een getal op te laten tellen, of een stuk tekst bijhouden.

1
2
3
4
leeftijd = 22
print(leeftijd) # dit print "22"
leeftijd = 30
print(leeftijd) # nu print het "30"

Comments

Omdat deze pagina ook toelichting geeft op de code, zijn de comments weggelaten. In jouw code zullen ze wel aanwezig zijn.

Een while-loop begint altijd met het woord while gevolgd door een voorwaarde of vergelijking, zoals x < 10 en wordt afgesloten met een dubbele punt :. Het afsluiten op een dubbele punt geeft aan dat de volgende - ingresprongen - regels bij de while-loop horen. Het is in wijze een "blok" aan code dat bijn elkaar hoort.

Omdat inspringen een belangrijk aspect is in deze programmeer taal, is je ontwikkelomgeving ingesteld om een kleur te geven aan elk ingesprongen niveau:

Indentation coloring in the editor

Elk ingesprongen niveau krijgt een eigen kleur

Uitvoeren van de code

Met het tweede workshop bestand (2_while_loop.py) geopend, klik op de Run knop in de groene balk en observeer wat de microcontroller terugstuurt naar de computer.

Uitkomst

De microcontroller zal reageren met:

Reactie van microcontroller
1
2
3
4
5
6
7
8
9

Vraag A: 'kleiner dan' en 'kleiner dan of gelijk aan'

Waarom eindigt het getal bij 9 en niet 10? (Denk aan je wiskunde les)

Oefening B: Het dubbele

Hoe kan je de code zo aanpassen dat je de onderstaande reactie krijg:

Uitkomst van aangepaste code
2
4
6
8
10
12
14
16
18
Antwoorden zien?

Als je er echt niet aan uit komt of je er dreigt tijd te kort, dan kan je de map antwoorden openen en kijken naar het antwoord van de stap waar je nu op zit.

Antwoorden!?!?

Of bekijk alle antwoorden, het is tenslotte geen toets :)