Vakdidactiek9/12/2002 Leen Depré
leen.depre@rug.ac.be
Vakdidactiek
9/12/2002 Leen Depré
leen.depre@rug.ac.be
Toepassingen op recursie
Binaire bomen
Herschrijfsystemen
Herhaling
Wat is recursie? Een functie (methode) heet recursief wanneer er in de code een aanroep van zichzelf voorkomt.
Binaire bomen
gebalanceerde boom
Binaire bomen
ongebalanceerde boom
Binaire bomen in LOGO
Binaire bomen in LOGO
to tree :size
if :size < 5 [stop]
fd :size
lt 30
tree :size*.7
rt 60
tree :size*.7
lt 30
bk :size
end
Binaire bomen
Random
De functie genereert een willekeurig geheel getal, kleiner dan de opgegeven waarde. random 50 print fd (random 50) + 50 ((random 5) + 5) / 10
Binaire bomen (code)
to rtree :size
if :size < 5 [stop]
fd :size
lt 30
rtree :size*(((random 5)+5)/10)
rt 60
rtree :size*(((random 5)+5)/10)
lt 30
bk :size
end
Natuurlijke boom
Natuurlijke boom (code)
to tree :size
if :size < 5 [fd :size bk :size stop]
fd :size/3
lt 30
tree :size*2/3
rt 30
fd :size/6
rt 25
tree :size/2
lt 25
fd :size/3
rt 25
tree :size/2
lt 25
fd :size/6
bk :size
end
Herschrijfsystemen
a a b
b a over het alfabet {a,b} Dus krijgen we: b a a b a b a a b a a b a b a a b a b a …
Grafische herschrijfsystemen in LOGO
niveau 0 niveau 1
De sneeuwvlok-krommen van Koch
niveau 0 niveau 1 niveau 2 niveau 3
Programma voor figuur van niveau 1
to flock :size
fd :size
lt 60
fd :size
rt 120
fd :size
lt 60
fd :size
end
to snow :size
cs
ht
repeat 3[flock :size/3 rt 120]
end
Comments