euDict.eu

.:cleverdict

Beitrag: Fibonacci-Zahlen rekursiv berechnen

Beitrag erstellt von: thomas.boor@googlemail.com.
Weitere Informationen unter: www.thomas-boor.de

Die Fibonacci-Zahlen sind eine mathematische Folge, der der das Ergebnis für die Eingangszahl 'n' 
die Summe ihrer beiden Vorgänger ist, sofern die Eingangszahl > 2 ist.
Die Folge lautet also:
1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, ...

Die Fibonacci-Zahlen beschreiben u.a. die Population einer Kaninchenzucht, sind aber auch Grundlage für alles Erschaffene.

Hier interessiert allerdings nicht die Anwendung der Fibonacci-Zahlen sonden lediglich der Umstand, dass diese Zahlenfolge gut geeignet ist,
die Rekursion in Programmen einfach zu demonstrieren.

Hier der einfache Code dazu:

#include <iostream.h>

long fib(long n);

int main(void)
{
int n = 0;
cout << "Fibonacci-Zahl berechnen. Für welche Zahl? " << flush;
cin >> n;
while (n > 0 && n < 42)
cout << "Die Fibonacci-Zahl für " << n << " lautet: " << fib(n) << endl;
}

long fib(long n)
{
if (n == 1 || n == 2) // fib(1) == fib(2) == 1
return 1;
else
return fib(n-1) + fib(n-2); // Rekursion...
}

Die Funktion trägt den Namen 'fib'. Und was darin aufgerufen: 'fib'!
Das ist Rekursion.

Führt man für das ganze jetzt mit einer Eingangszahl von 17 einen Schreibtischtest durch,
sollte man das Papier auf jeden Fall hochkannt haben, da die Rekursionstiefe > n ist.

Viel Spass!


Diesen Beitrag drucken

X  Missbrauch melden!

Rechtlicher Hinweis: Für den Inhalt dieser Seite ist einzig und allein deren Autor verantwortlich.

Falls Ihnen dieser Beitrag nicht die gewünschte Information geliefert hat, empfehlen wir Ihnen folgende Links: