Rekursion < Lineare Algebra < Hochschule < Mathe < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 13:48 So 13.03.2005 | Autor: | fipo |
Hallo miteiander,
ich musste fuer die uni eine rekursion berechnen. mit hilfe eines kleinen programms war das auch gar kein problem. nun möchte ich wissen, wie der rechner auf diese werte kommt:
F(n) = 1 wenn n = 1 od. n = 2
F(n) = F(n-2) + F(n-1) wenn n > 2
Welchen Wert hat das Funktional bei F(7) u. F(5). Nun weiss ich was da rauskommt, mich interessiert der Lösungsweg. Hab schon das eine oder andere auf'm Papier versucht, das ganze will aber nicht so recht.
Vielleicht kennt jemand von euch einen einfachen Lösungsweg, bin für jede Anregung froh.
MfG
Fipo
ch habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 13:53 So 13.03.2005 | Autor: | Hanno |
Hallo Fipo!
Es tut mir leid, aber ich verstehe nicht ganz, was nun deine Frage ist. Hast du die rekursiv definierte Folge $F$ mit $F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)$ gegeben und suchst eine explizite Darstellung? Oder hast du einige Folgenwerte gegeben und suchst dazu überhaupt eine rekursive Definition? Wenn ersteres der Fall ist, du also die rekursive Darstellung gegeben hast, dann suche bitte bei google nach "Fibonaccizahlen" oder der "Fibonacci Folge". Dort wirst du mit Sicherheit fündig werden.
Liebe Grüße,
Hanno
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 17:38 So 13.03.2005 | Autor: | fipo |
Hallo Hanno,
nein ich suche keine explizite Darstellung. ich poste jetzt mal das phyton skript: vielleicht ist es dann leichter zu verstehen.
#!/usr/bin/env python
def f(n):
if n == 1: //falls n=1 terminiere
return 1
if n == 2: //falls n=2 terminiere
return 1
else:
return f(n-2)+f(n-1)
print f(5) //Funktionswert wird hier nach Berechnung ausgegeben
---> bei f(5) bekommt den wert 5 zurueck..... und bei f(7) bekommt man 13 als
ausgabe.
Meine konkrete Frage ist wie berechne ich, dass von Hand um auf die gleichen Werte zu kommen? Skript funktioniert, die Werte passen auch.
MfG
fipo
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 18:08 So 13.03.2005 | Autor: | Nam |
Die nächste Zahl ist immer die Summe der beiden Vorgänger.
Um f(5) auszurechnen musst du f(4) und f(3) addieren. Dazu musst du halt zuerst f(4) und f(3) ausrechnen.
Also:
[mm]f(5) = f(4) + f(3) = f(3) + f(2) + f(2) + f(1) = f(2) + f(1) + f(2) + f(2) + f(1) = 3 * f(2) + 2*f(1) = 3 + 2 = 5[/mm]
Wenn du alle Folgenglieder aufschreibst, fällt das Ausrechnen des nächsten etwas einfacher:
1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, etc. etc.
Also: f(7) = f(6) + f(5) = 8 + 5 = 13
|
|
|
|