🖌️
Python 0
  • Les 1 - Je eerste tekeningen
  • Loops
    • Les 2 - Herhalen - For-loops
    • Les 3 - Geneste loops
  • Functies
    • Les 4 - Functies maken
    • Les 5 - Functies met parameters
  • Les 6 - Nog een keer loops … - range() goed gebruiken
Powered by GitBook
On this page
  • Loops in loops
  • Opdrachten
  • Wandel-mode (pen optillen)
  • Opdrachten

Was this helpful?

  1. Loops

Les 3 - Geneste loops

PreviousLes 2 - Herhalen - For-loopsNextLes 4 - Functies maken

Last updated 4 years ago

Was this helpful?

Loops in loops

Je kunt ook een loop in een ander loop gebruiken! Kijk maar eens naar het volgende figuur:

We doen eigenlijk zes keer hetzelfde:

  • teken vierkant

  • draai 90 graden naar rechts

  • loop langs een zijde

  • draai 30 graden links

Dus de code is:

import turtle

turtle.speed(0)

for _ in range(6):
 turtle.forward(30) # Het gele stuk tekent een vierkant
 turtle.right(90)
 turtle.forward(30)
 turtle.right(90)
 turtle.forward(30)
 turtle.right(90)
 turtle.forward(30)
 turtle.right(90)
 
 turtle.right(90) # Draai 90 graden terug en
 turtle.forward(30) # loop langs de zijde
 turtle.left(30)

Maar programmeurs houden niet van onnodige code. Regel 6 t/m 14 bevat vier keer dezelfde twee regels! Dus daar maken we een loop van. En dan krijg je de code zoals hieronder:

Opdrachten

Opdracht 1

Teken de onderstaande figuren met een programma.

Opdracht 2

Teken het onderstaande figuur met een programma.

Opdracht 3

Voer het onderstaande programma uit en beantwoord dan de vraag die onder de code staat:

import turtle

turtle.shape("turtle")
turtle.setheading(90)

for i in range(4):
 turtle.forward(100)
 turtle.right(90)
turtle.right(90)

for i in range(4):
 turtle.forward(100)
 turtle.right(90)
turtle.right(90)

for i in range(4):
 turtle.forward(100)
 turtle.right(90)
turtle.right(90)

for i in range(4):
 turtle.forward(100)
 turtle.right(90)
turtle.right(90)

Vraag: Kan dit programma korter? Zo ja, hoe?

Wandel-mode (pen optillen)

In principe is de turtle steeds in pen-mode. Dit betekent dat hij steeds een lijn aan het tekenen is terwijl hij beweegt. De turtle kan ook in wandel-mode terecht. Dan kan hij bewegen, terwijl hij geen spoor nalaat. Je kunt tijdens het uitvoeren van een programma meerdere keren naar pen-mode of wandel-mode.

Door het commando turtle.up() in te geven kom je in wandel-mode terecht.

Door het commando turtle.down() in te geven kom je in pen-mode terecht.

Opdrachten

Opdracht 4

a. Schrijf een programma dat de onderstaande tekening maakt.

b. Schrijf een programma dat de onderstaande tekening maakt.

Inleveropdracht - Beverbot

[De onderstaande opdracht komt uit de beverwedstrijd van 2008 (1ste ronde) ]

Beverrobot kent de volgende vier opdrachten:

vooruit

beverrobot gaat 50 stappen vooruit

links

beverrobot draait 90 graden linksom

rechts

beverrobot draait 90 graden rechtsom

herhaal x {}

beverrobot herhaalt de opdrachten tussen { en } x keer.

  1. Welke figuur maakt beverrobot als het volgende wordt uitgevoerd?

herhaal 4 {
 herhaal 2 {
  vooruit
  rechts
 }
 vooruit
 links
}

b) Kies een andere figuur uit en schrijf een programma waarmee je dat figuurtje maakt.

Screen Shot 2016-05-31 at 08.32.44.png