In dit deel leren we een aantal blokken te herhalen totdat er voldaan is aan een bepaalde voorwaarde.
Het “Herhalen tot”-blokje
In het palet Besturen kan je onderstaande blokken terugvinden.
Blok | Uitleg |
---|---|
repeat {10};
|
Alles wat in dit blokje staat, wordt 10 keer herhaald. Je kan het getal 10 aanpassen. |
forever;
|
Alles wat in dit blokje staat, wordt steeds herhaald. Deze herhaling stopt dus niet! |
repeat until <(teller) = "10" >;
|
Alles wat in dit blokje staat, wordt uitgevoerd tot de gegeven uitspraak waar is. Is de uitspraak al onmiddellijk waar, dan wordt het herhalingsblokje niet uitgevoerd. |
Een voorbeeld
when greenflag clicked
set [geld] to {0};
show variable [geld];
repeat until <{(geld)} \> {50}>;
say {"We hebben nog niet genoeg geld om iets te kopen...."} for {2} seconds;
say {"Even wat geld verdienen"};
change [geld] by {10};
wait {2} seconds;
end
say {"Eindelijk!! Wij kunnen iets kopen."} for {2} seconds;
In dit voorbeeld kunnen we pas naar de winkel als we genoeg geld hebben. We starten echter met nul Euro. Eerst wordt er getest of we genoeg geld hebben. Dit is echter niet het geval want de variabele geld heeft nul als waarde. Het resultaat van de uitspraak
<(geld) \> "50">
is dus niet waar. Dit betekent dat we alle blokken in de herhaling voor een eerste keer gaan uitvoeren. Je kan zien dat we wat geld verdienen op het einde van deze herhaling. De tweede keer dat de uitspraak getest wordt, hebben we dus al 10 euro. Maar dat is nog steeds niet genoeg en de uitspraak zal daarom opnieuw niet waar zijn. Dit betekent dat we opnieuw alle blokken in deze herhaling zullen uitvoeren. Dit blijven we doen totdat we genoeg geld hebben en de herhaling stopt. Dan kunnen we naar de winkel!
En nu aan de slag
- Maak het voorbeeld eens na in Scratch en voer het uit.
- Pas het voorbeeld aan op de volgende manier:
- Verander het voorwaardeblokje eens door het gelijk aan blokje te gebruiken. Wat gebeurt er?
- Verander de waarde van de variabele geld eens in 50. Wat gebeurt er?
- Schrijf ook een programma met een herhaal-tot-blokje. Doe dit bijvoorbeeld als volgt:
- Begin met 50 euro.
- Laat de herhaling het geld steeds verminderen met 10.
- Laat de herhaling stoppen wanneer het geld gelijk is aan 0.
- Tellen van 1 tot 10
- Maak een variabele die je zal gebruiken om te tellen. Zet de waarde op 1.
- Zeg de variabele.
- Verander de variabele met 1. We tellen op!
- Herhaal stappen 2 en 3 tot de variabele groter is dan 10.