Functies met return
Gebruik de pijlen om tussen de dia's te wisselen.
Tekst van deze dia
PROGRAMMEREN • 3E & 4E MIDDELBAAR
Functies met return
Laat jouw functie rekenen en antwoorden
LES 16 • LEVEL 16
Tekst van deze dia
STARTVRAAG
Stel je dit eens voor…
Een herkenbaar probleem, een slimme oplossing.
HET VERHAAL
Je wilt op veel plaatsen dezelfde prijscalculatie uitvoeren.
Hoe geeft een functie een berekend resultaat terug?
Tekst van deze dia
ONZE MISSIE
Vandaag kan jij…
Drie doelen. Helemaal haalbaar, stap voor stap.
1
return gebruiken
2
resultaten van functies bewaren
3
kleine taken opsplitsen
EINDMISSIE • MAAK ZELF IETS!
Tekst van deze dia
NIEUW IDEE
return stuurt een waarde terug
Eerst begrijpen wat de instructie betekent.
Een functie kan iets berekenen en het resultaat teruggeven aan de aanroeper.
ONTHOUD
return is niet hetzelfde als print().
Tekst van deze dia
LIVE CODEREN
Van idee naar werkende code
Lees mee. Voorspel samen de uitvoer en voer dan uit.
les16_voorbeeld_a.py
def dubbel(getal):
return getal * 2
uitkomst = dubbel(7)
print(uitkomst)
DENKVRAAG
return is niet hetzelfde als print().
Tekst van deze dia
RAAD DE UITVOER
Wat zal Python tonen?
Welke waarde wordt getoond?
voorspel.py
def plus_een(x):
return x + 1
print(plus_een(4) * 2)
DENK → OVERLEG → ANTWOORD
Tekst van deze dia
OPLOSSING
En dit verschijnt op het scherm!
Vergelijk met je voorspelling.
uitvoer (geen Python-code)
WAAROM?
plus_een(4) geeft 5 terug; daarna volgt 5 * 2.
Tekst van deze dia
LEVEL UP
Gebruik functies als bouwstenen
Een extra Python-truc waarmee je meer kunt.
Elke functie krijgt één duidelijke taak.
TIP
Duidelijke functienamen maken code makkelijker te begrijpen.
Tekst van deze dia
ZO WERKT HET
Nog een codevoorbeeld
Lees de code. Wat verandert er ten opzichte van het vorige voorbeeld?
les16_voorbeeld_b.py
def prijs(aantal, stukprijs):
return aantal * stukprijs
totaal = prijs(3, 4)
print(f"Totaal: {totaal}")
DE TRUC
Duidelijke functienamen maken code makkelijker te begrijpen.
Tekst van deze dia
JIJ PROBEERT
Mini-opdrachten
Werk rustig. Test telkens na een kleine wijziging.
1
Maak een functie die twee getallen optelt.
2
Laat het resultaat terugkomen met return.
3
Roep de functie aan en toon de uitkomst.
6–8 MINUTEN • EERST ZELF
Tekst van deze dia
DEBUGCHALLENGE
Python zegt: er is iets mis!
Speel detective: zoek de fout vóór je het programma uitvoert.
zoek_de_fout.py
def verdubbel(x):
print(x * 2)
antwoord = verdubbel(5)
print(antwoord)
SPOTTED DE FOUT? • 90 SECONDEN
Tekst van deze dia
DEBUG-OPLOSSING
De verbeterde versie
Kleine correcties kunnen een groot verschil maken.
gecorrigeerd.py
def verdubbel(x):
return x * 2
antwoord = verdubbel(5)
print(antwoord)
WAT WAS FOUT?
print() toont alleen iets; zonder return krijgt antwoord de waarde None.
Tekst van deze dia
EINDMISSIE
Prijsfunctie
Maak een herbruikbare functie voor een mini-webshop.
1
Maak bereken_prijs(aantal, prijs).
2
Laat de functie het totaal teruggeven.
3
Vraag hoeveelheid met int(input()).
4
Toon het eindbedrag met een f-string.
EERST WERKEND → DAN MOOIER
Tekst van deze dia
VOORBEELD
Zo kan jouw oplossing eruitzien
Er bestaan meerdere correcte oplossingen. Vergelijk vooral de aanpak.
les16_oplossing.py
def bereken_prijs(aantal, prijs):
return aantal * prijs
aantal = int(input("Hoeveel? "))
totaal = bereken_prijs(aantal, 5)
print(f"Totaal: {totaal} euro")
Tekst van deze dia
EXTRA CHALLENGE
Klaar? Level up!
Kies één extra uitdaging of help je klasgenoot met een tip.
BONUSOPDRACHT
Maak ook een functie die 10% korting berekent.
Het werkt — Test je programma met normale invoer.
Maak het sterker — Test ook eens een onverwacht antwoord.
Maak het eigen — Pas namen, teksten of vormgeving aan.
Tekst van deze dia
CHECK-OUT
Wat neem je mee?
Antwoord zonder spiekbriefje. Je hoeft niet alles al perfect te kunnen.
1
Wat geeft return terug?
2
Waarom is return anders dan print()?
3
Wat levert dubbel(3) op?
VOLGENDE KEER Les 17: toeval met random