Rekursive Prozeduren 2

Aus ProgrammingWiki
Archivierte Version vom 2009-05-08T06:32:05+00:00. Aktuelle Version

Inhaltsverzeichnis

Aufgabe 1:

Schreiben Sie eine rekursive Prozedur fak, die eine Zahl als Argument erwartet und deren Fakultät als Ergebnis liefert.

<eval>(fak 5)</eval>

Aufgabe 2:

Schreiben Sie eine rekursive Prozedur fib, die die n-te Fibonaccizahl als Ergebnis liefert. Hinweis: Die n-te Fibonaccizahl errechnet sich aus der Summe ihrer beiden Vorgänger.

<eval>(fib 5)</eval>

Aufgabe 3:

Schreiben Sie eine rekursive Prozedur fibonacci_list, die eine Liste mit den ersten n Fibonaccizahlen zurückgibt. Hinweis: Verwenden Sie zur Lösung dieser Aufgabe Ihre Prozedur fib aus der vorherigen Aufgabe!

<eval>(fibonacci_list 5)</eval>


Aufgabe 4:

Schreiben Sie eine Prozedur ascending, die eine Liste nimmt und #t zurückgibt, falls die Listenelemente aufsteigend geordnet sind, ansonsten #f.
Hinweis: Beachten Sie das Resultat für die leere Liste ’().

Aufrufbeispiele:


> (ascending ’(1 2 4 7))
#t
> (ascending ’(1 3 4 5 2 6))
#f
> (ascending ’())
#t

<eval>;Aufrufbeispiel zum Testen Ihrer Prozedur (ascending '(1 2 8))</eval>