In de vorige hoofdstukken heb je al verschillende functies gebruikt. Denk maar aan de in- en uitvoer functies input() en print(). In dit onderdeel ga je zelf functies schrijven. Waarom zou je zelf functies willen schrijven?
Er is een bepaalde functionaliteit die je op meerdere plekken in je programma nodig hebt, dan kan je die beter in een aparte functie stoppen in plaats van de code telkens te kopiëren.
Door functies met parameters te schrijven zal de code duidelijker worden, is deze gemakkelijker te lezen en te onderhouden.
Je programma is te lang om de inhoud goed te blijven overzien. Door de code op te splitsen in functies blijf je veel langer grip houden op de inhoud en werking.
…
def <functienaam>(<parameter_lijst>) :
<acties>
Parameters worden gebruikt om informatie van buiten de functie naar de functie toe te communiceren. Vaak wil je ook informatie vanuit de functie naar het programma buiten de functie toe communiceren. Daartoe dient het commando return.
Uit de wetten van Newton volgt de volgende formule voor de valafstand d van een object gedurende een tijd t. Op aarde is de zwaarteveldsterkte g = 9,81 m/s².
\[\mathsf{d = \dfrac{1}{2}\cdot g \cdot t^2}\]We kunnen de valafstand eenvoudig berekenen met behulp van een functie in Python.
def valafstand(t, g):
d = 1/2 * g * t**2
return d
print("Als een object 3 seconden valt, dan legt het", valafstand(3, 9.81), "m af.")
Je merkt dat alle complexiteit in de functie bevat zit en de print-functie zeer natuurlijk leest. Ook het onderstaande leest zeer vlot.
print("Als een object 3 seconden valt op de maan, dan legt het", valafstand(3, 1.625), "m af.")
Beschouw onderstaande code, deze bevat een foutje.
Corrigeer deze code zodat als uitvoer verschijnt:
Een driehoek met basis 4.5 cm en hoogte 1.0 cm heeft oppervlakte 2.25 cm².