Hoofdstuk - Turtle Graphics: Functies en parameters

Let op: log eerst in bij repl.it
Door naar de gewone opgaven over Eigen Functies
Door naar extra opgaven om te oefenen met functies en parameters (met Turtle)
Terug naar de cursus pagina

Eigen functies schrijven

Voor code dat bij elkaar hoort kun je in een functie schrijven. Een functie heeft een naam, en een definitie: de instructies die aangeven wat er moet gebeuren. Een functie definitie begint met def gevolgd door een naam en :. Daarna spring je in voor alle code dat bij de functie hoort.

Om je eigen functie aan te roepen geef je de naam gevolgd door (). Je hoeft er nu geen turtle. voor te zetten omdat de definitie in dit bestand staat (en niet in een aparte turtle module).

Hier is een voorbeeld van een functie tekenVierkant() voor het tekenen van een vierkant met zijdes van 50 pixels.

import turtle

#FUNCTIE DEFINITIE
#Definitie: instructies voor het tekenen van een vierkant
#Na afloop kijkt turtle dezelfde richting uit als in het begin.
def tekenVierkant():
    turtle.forward(50)
    turtle.right(90)
    turtle.forward(50)
    turtle.right(90)
    turtle.forward(50)
    turtle.right(90)
    turtle.forward(50)
    turtle.right(90)

#HOOFDPROGRAMMA MET AANROEP VAN FUNCTIE
turtle.pendown()
tekenVierkant() #Aanroep: teken de vierkant!
turtle.done()

Opgave Vierkant-kunst: functies aanroepen

Deze opdracht wordt nog niet automatisch gecontroleerd. Klik hier om je eigen oplossing te vergelijken met een model oplossing.

Logische eenheden

Een groot voordeel van functies is dat je code opdeelt in logisch eenheden met een herkenbare naam. Dat maakt ze herbruikbaar, en je code leesbaarder.

Opgave Huis: functies aanroepen

Deze opdracht wordt nog niet automatisch gecontroleerd. Klik hier om je eigen oplossing te vergelijken met een model oplossing.

Opgave Huis: hergebruik van functies

Deze opdracht wordt nog niet automatisch gecontroleerd. Klik hier om je eigen oplossing te vergelijken met een model oplossing.

Makkelijk aanpassen

Als je functie gebruikt heb je minder code dubbel staan. Dat is vooral handig als je iets in één keer wilt aanpassen voor meerdere dingen. Hoe dat nu werk zien we nu.

Opgave Dorp aanpassen

Deze opdracht wordt nog niet automatisch gecontroleerd. Klik hier om je eigen oplossing te vergelijken met een model oplossing.

Eigen functies schrijven

Bij het tekenen van de Nederlandse vlag heb je veel code geschreven dat zich herhaalt. Op de kleur na, is de code voor het tekenen van de blauwe balk hetzelfde als de witte balk en de rode balk.

Doordat dezelfde code er nu drie keer in staat, maakt dit je code slecht te lezen, en als je wat wilt aanpassen (bijvoorbeeld de breedte) is dat ook nog eens veel werk want dat moet je dan op verschillende plaatsen in je code aanpassen.

Van code dat bij elkaar hoort kun je een functie schrijven. Dit begint met def gevolgd door een naam en :. Daarna spring je in voor alle code dat bij de functie hoort.

Opgave Eigen creatie met functies en parameters

Optioneel: Opgave Toren van driehoeken

We zullen stapsgewijs kleine tekeningetjes maken, waarbij we uiteindelijk de volgende figuur gaan tekenen:

Figuur: Toren van driehoeken Toren van driehoeken

Zoals je kunt zien bestaat de figuur uit heel veel driehoekjes. We willen de code om een driehoekje te tekenen maar een keer opschrijven. Daarom is het handig om hier een functie voor te maken.


Door naar extra opgaven om te oefenen met functies en parameters (met Turtle)
Door naar de gewone opgaven over Eigen Functies
Terug naar de cursus pagina