Einzelnen Beitrag anzeigen

Niels

Registriert seit: 25. Okt 2003
192 Beiträge
 
#10

Re: best. rekursive funktion erklären

  Alt 12. Nov 2004, 17:15
Zitat von Blechwolf:
Zitat von Toxman:
Das mit dem fehlenden Ergebniss stimmt nicht!
Wenn man dem Funktionsnamen einen Wert zuweisst, ist das gleichbedeutend mit einer Zuweisung an result.
Wie Toxman schon richtig gesagt hat, kann die Funktion durchaus ein Ergebnis zurückliefern. Damals bei Turbo/Borland Pascal gabs sowas wie ein Result noch nicht. Da ging das nur so.
...
Hallo,
das ist schon richtig, dass man anstatt result den Funktionsnamen benutzen kann. Jedoch endet die Rekursion wenn x = 2*y. Wenn dieser Fall eintritt wird jedoch kein Ergebnis zugewiesen. Das "else" fehlt hier also.

Ich persönlich seh in der Funktion auch keinen Sinn.

MfG Niels

[edit]
Mir ist grad nochwas aufgefallen. Der rechte Teil der Zuweisung
funktion:=funktion(x-1,y-1) + funktion(x,y); wird immer wieder mit den Ausgangswerten aufgerufen. Ein Funktionsaufruf endet also immer in einer Endlosrekursion, außer auf die Ausgangswerte trifft zu: x = 2*y. Hier kommt's aber zu dem oben bereits erklärten Problem (unbestimmtes Ergebnis, was eben grad an der Stelle im RAM steht).
[/edit]
  Mit Zitat antworten Zitat