Stap 2: Stippen tot de rand (while met een positie)
De vraag in een while-loop mag over de schildpad zelf gaan.
turtle.xcor() geeft hoe ver hij naar rechts staat. Zo loopt hij tot de
rand, zonder dat jij hoeft uit te rekenen hoeveel stappen dat zijn:
import turtle
turtle.penup()
turtle.goto(-200, 0)
while turtle.xcor() < 200:
turtle.dot(20, "red")
turtle.forward(40)
import turtle
turtle.penup()
turtle.goto(-200, 0)
while turtle.xcor() < 200:
turtle.dot(20, "red")
turtle.forward(40)Elke ronde zet de schildpad een stip en loopt hij 40 verder. Zodra hij op 200 of verder staat, stopt de loop. Tel zelf maar: dat zijn tien stippen.
Opdracht: een trap
Teken een trap van linksonder naar rechtsboven: steeds 30 omhoog en 30 naar
rechts, zolang de schildpad lager staat dan 140. Begin op (-150, -150).
import turtle turtle.penup() turtle.goto(-150, -150) turtle.pendown()
Klik hier voor een tip.
turtle.ycor() geeft hoe hoog de schildpad staat. Een trede is
left(90), forward(30), right(90), forward(30). Na een trede kijkt
de schildpad weer naar rechts.
Klik hier voor de oplossing.
import turtle
turtle.penup()
turtle.goto(-150, -150)
turtle.pendown()
while turtle.ycor() < 140:
turtle.left(90)
turtle.forward(30)
turtle.right(90)
turtle.forward(30)
Maak het je eigen
De vraag bovenaan een while-loop mag over een lengte gaan, maar ook over de plek van de schildpad.
- Draai in de spiraal van stap 1 net iets meer of minder dan 90 graden, zoals 91 of 89, en kijk wat er met de hoeken gebeurt.
- Teken een ronde spiraal: een while-loop met
circle(straal, 90), waarin de straal elke ronde groeit. - Laat de schildpad één keer tegen het plafond stuiteren. Begin op
(-250, -150)en loop schuin omhoog totycor()boven 150 komt. Draai dan 90 graden naar rechts, en loop met een tweede while-loop schuin omlaag tot hij weer onder -150 komt. - Zet stippen tot de rand die elke stap groter worden, met een tweede variabele die in de loop meegroeit.
Door naar het volgende project: Een straat vol huizen.