Rekursion II

Aus ProgrammingWiki
Archivierte Version vom 2012-06-25T12:14:26+00:00. Aktuelle Version

Inhaltsverzeichnis

Die Fibonaccizahlen

Leonardo Fibonacci di Pisa (* um 1180; † 1241) beschrieb die Fortpflanzung von Kaninchen mit der Zahlenfolge:

1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...

Definition:

\mbox{fib}(n)=\begin{cases}1,\mbox{wenn}\hspace{0.3em}n=1\\1,\mbox{wenn}\hspace{0.3em}n=2\\\mbox{fib}(n-1)+\mbox{fib}(n-2),\mbox{sonst}\end{cases}

Beschreibung:

Die Kaninchenpaar bekommt nach zwei Monaten Nachwuchs (Pärchen!), dies dann jeden Monat. Die "Kinderpaare" verhalten sich genauso. Die Kaninchen leben "unendlich lange".

Das bedeutet:

  • Die ersten beiden Glieder der Zahlenfolge sind jeweils 1.
  • Jedes weitere Glied ergibt sich aus der Summe seiner beiden Vorgänger.

Prüfen!

siehe auch http://www.ijon.de/mathe/fibonacci/index.html


iterativ

Zunächst eine iterative Version:

rekursiv


Schreiben Sie nun eine rekursive Funktion gemäß der oberen Beschreibung:



Ackermann-Funktion

Die Ackermann-Funktion folgendermaßen definiert:

Definition:

Ack(0, y)=y+1
Ack(n + 1, 0) = Ack(n, 1)

Ack(n +1, y+1) = Ack(n, Ack(n + 1, y))


Informationen zur Ackermann-Funktion unter http://de.wikipedia.org/wiki/Ackermannfunktion