Scheme Turtle 4
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>Scheme</language>
===Nichtbinär-Baum===
Natürlich kann man sich diverse Verzweigungsvarianten überlegen und analog zu dem rekursiven Vorbild des klassischen Binärbaums umsetzen. Die folgende Prozedur zeigt ein Beispiel.
<eval>
(clear canvas)
(move turtle 200 190)
(define tree
(lambda(side winkel)
(cond [(< side 20) #t]
[else
(penwidth turtle (+ (/ side 10) 1 ))
(forward turtle side)
(left turtle winkel)
(tree (/ side 2) winkel)
(left turtle winkel)
(tree (/ side 2) winkel)
(right turtle (* 4 winkel))
(tree (/ side 2) winkel)
(left turtle winkel)
(tree (/ side 2) winkel)
(left turtle winkel)
(backward turtle side)])))
(tree 100 25)
</eval>
<canvas></canvas>
[[Scheme Turtle 5]]