Informatiker Board (http://www.informatikerboard.de/board/index.php)
- Themengebiete (http://www.informatikerboard.de/board/board.php?boardid=1)
-- Praktische Informatik (http://www.informatikerboard.de/board/board.php?boardid=6)
--- Konstruktion einer rekursiven Funktion (http://www.informatikerboard.de/board/thread.php?threadid=619)


Geschrieben von eggi am 29.11.2009 um 18:23:

  Konstruktion einer rekursiven Funktion

Hallo!

Hoffe dass meine Fragestellung in das Forum passt.

Und zwar geht es um um die Kochkurve.

Ich soll eine rekursive Funktion schreiben, die für die n-te Kochkurve die Ecken bzw. Knicke berechnet.

Ich weiß bereits dass es durch 4^n -1 definiert ist.

Kann mir einer einen Tipp geben wie ich diese Funtkion rekursiv darstellen kann?
0 soll auch Element aus N sein.



Geschrieben von JoTheGunny am 30.11.2009 um 18:08:

 

Wenn es (4^n)-1 ist, ist es doch recht einfach, du hast eine Funktion mit einen Parameter ( n ) und lässt bei jedem rekursiven Durchgang n um eins dekrementieren ( beim neuen aufruf um eins vermindert übergeben ). Dann musst du noch die Abbruchbedingung setzen, damit es nicht unendlich tief geht.
Normaler durchgang: return 4 * rek( n-1 ); bei h der rekursion solltest du noch die -1 subtrahieren.



Geschrieben von eggi am 30.11.2009 um 19:54:

 

Soweit bin auch gekommen.

Nur wenn er für 0 als letztes n reingeht soll er ja auch 0 ausgeben.

Nur ist dann die Sache dass er die komplette Funktion dann mal 0 nimmt und es dann wieder nicht stimmt.



Geschrieben von JoTheGunny am 01.02.2010 um 20:49:

 

Zitat:
Original von eggi
Soweit bin auch gekommen.

Nur wenn er für 0 als letztes n reingeht soll er ja auch 0 ausgeben.

Nur ist dann die Sache dass er die komplette Funktion dann mal 0 nimmt und es dann wieder nicht stimmt.

Eine Zahl mit der Potenz 0 ergibt immer 1, daher musst du per if abfragen ob es eine 0 ist und dann eine 1 zurückgeben. Das wäre der einfachste weg.



Geschrieben von AxelF am 17.02.2010 um 16:52:

  Kochkurve

Das Thema Kochkurve wird sehr ausführlich im Buch "Bausteine des Chaos Fraktale" (ISBN 3-540-55781-4 des Springer Verlages Autoren: Peitgen, Jürgens, Saupe, Erscheinungsjahr 1992) besprochen. Anbei ist auch ein Basic-Programm auf Seite 220, welches die Kochkurve grafisch darstellt.

Mit ein wenig Grundkenntnissen von Basic lässt sich dieses Programm ohne Probleme in eine moderne Sprache z.B. Java übersetzen ;-). Dort wird mit einem Array zur Speicherung der Koordinaten der Punkte gearbeitet.

Innerhalb der Rekursion wird zunächst das linke Teilstück, anschließend der linke mittlere Teil, dann der rechte mittlere Teil und zuletzt das rechte Teilstück erzeugt. ;-)


Forensoftware: Burning Board, entwickelt von WoltLab GmbH