herhaalblokken 'nesten' in
herhaalblokken om complexe afbeeldingen te maken.
herhaal blok) en klik je op 'kopieer'.
neem stappen- en
draaiblokken van de rode driehoek, zoals hieronder.
Snap! heeft een debug-tool genaamd Stapsgewijs Programmaverloop dat je laat bepalen hoe snel Snap? door de blokken van je code 'stapt'. Dit zorgt ervoor dat je het effect van ieder blok één voor één kan zien om je te helpen fouten in je code te vinden.
Nadat je op de Stapsgewijs Programmaverloop-knop
(
) hebt geklikt, kan je met de
schuif de stapsnelheid bepalen. De sprite voert iedere stap van de code uit, gemarkeerd in
cyaan.
Als je de schuif op de langzaamste instelling zet (helemaal naar links), dan verandert de vorm van de gele pauze-knop en kan je erop drukken om één stap vooruit te gaan in je code. Dit kan je helpen om te zien wat er gebeurt op een specifiek tijdspunt.
Voelt al dit knippen en plakken van code een beetje raar? Je kent al een nettere manier om code te
hergebruiken:
abstractie. In Hoofdstuk 1 heb je een molenblok gebruikt in plaats van code te
kopiëren om asterisk en veelhoek te implementeren. Nu kan je ook weer een blok
maken om abstractie te hanteren. In dit geval is er wel een klein verschil, we willen
soortgelijke code (een kleinere driehoek) plaatsen binnenin de originele code.
We zullen dus hetzelfde blok in zichzelf gebruiken.
geneste driehoekblok.
grootte > 9. Deze voorwaarde is belangrijk voor later.
neem
stappen- en draaiblokken. Je kan iets soortgelijks doen met je
geneste driehoekblok.
geneste driehoekblok in het venster
waar je je geneste driehoekblok maakt. Zet het blok in de
definitie van geneste driehoek tussen de
neem stappen en draaiblokken. Maak zijn grootte
invoer de helft van de huidige waarde van grootte.
geneste driehoek in zijn eigen definitie.
Als een blok naar zichzelf verwijst, dan noem je dit blok recursief.
Recursie is een van de meest krachtige technieken in de informatica en je gaat
er meer over leren in latere projecten.
geneste driehoek als een voorbeeld om een recursief
genest vierkantblok te bouwen.
om een felle kleur te kiezen, niet
bijna wit of bijna zwart. Daarna kan je elk getal gebruiken als invoer voor je nieuwe blok.