A: Was für eine Porgrammierart wird hier für diese Funktion verwendet?
Das sagst Du bereits im Titel Deiner Frage: Zur Programmierung wird eine Rekursion verwendet. Dies erkennt man daran, dass sich die Funktion fib
selbst aufruft.
B: Beschreibe die Rechnungsschritte für fib(5) detailliert/schrittweise. Ergebnis?
Berechnet werden hier die Glieder der Fibonacci-Folge. Es gibt zwei Startglieder \(f_0=0\) und \(f_1=1\). Das Bildungsgesetz für die Fibonacci-Folge lautet: \(f_n=f_{n−1}+f_{n−2}\). Daraus ergeben sich die Folgenglieder \(0, 1, 1, 2, 3, 5, 8, ...\) Dies erkennt man auch in dem Programm:
Die Startglieder (\(0\) und \(1\)) werden folgendermaßen durch die Funktion erzeugt: if (n<2){return n;}
Die übrigen Folgenglieder werden wie folgt berechnet: return fib(n-1) + fib(n-2);
fib(5)
berechnet das Fibonacci-Folgenglied \(f_n\). Dementsprechend ist fib(5)
= \(f_5\) = \(5\).