Page 47 - Demo
P. 47

TI Python BootCamp Python FUNCTIES ITERATIES & FUNCTIES
De statistische functies gedefinieerd in het document statistics.tns kunnen nu gebruikt worden na een import van het betreffende programma stat.py in ieder document:
stat-functies in doc Module
2. Recursie
Een eenvoudige omschrijving van een recursieve functie is een functie die optreedt als onderdeel van zichzelf. M.a.w. een recursieve functie is een functie die zichzelf aanroept. Vanzelfsprekend heeft recursie meer gecompliceerde definities en toepassingen in de informatica en het programmeren.
     Met behulp van recursieve functies kan het probleem worden onderverdeeld in sub-problemen die eenvoudig kunnen worden opgelost. Maar het is soms moeilijker om de logica van recursieve functie te volgen.
Voorbeeld 1 – Faculteit
 Voor ieder natuurlijk getal 𝑛 ≥ 1 geldt: 𝑛! = ∏! 𝑘 = 1 ∙ 2 ∙ 3 ∙ ... ∙ 𝑛
Eigenschap: 𝑛! = 𝑛 ∙ (𝑛 − 1)!
 "#$
  Met de definitie
def fac(n):
¨¨uitkomst = 1
¨¨for i in range(1,n+1): ¨¨¨¨uitkomst = uitkomst * I ¨¨return uitkomst
a=5
print("De faculteit van",a,"is",fac(a))
Met recursie
def fact(n):
¨¨if n==1:
¨¨¨¨return 1
¨¨else:
¨¨¨¨return (n*fact(n-1))
a=5
print("De faculteit van",a,"is",fact(a))
    Python legt recursie een beperking op omdat elke keer een functie zichzelf aanroept, tussenliggende waarden bewaard moeten worden in het geheugen. Voor het bovenstaande programma kan hoogstens 204! berekend worden.
fact(204) fact(205)
     © 2020 T3 Nederland – T3 Vlaanderen 5
www.t3nederland.nl – www.t3vlaanderen.be







































































   45   46   47   48   49