Hier bin ich: 
Inhaltlich verantwortlich: Birgit Kersten
Eingestellt am: 30.06.2022
Stand vom: 02.01.2023

Dieses Medium ist freies Lern- und Lehrmaterial im Sinne der UNESCO-Initiative Open Educational Ressources (OER) Details zu OER. Sie dürfen diesen Beitrag entsprechend oben angegebener Lizenz verwenden, wenn Sie folgende Quellenangabe benutzen:
Birgit Kersten auf dem Bildungsserver Sachsen-Anhalt (http://www.bildung-lsa.de/index.php?KAT_ID=13909#art41329)
Open Educational Resources

Beitrag eingestellt von: Frau Birgit Kersten
Telefon: +49 (0)345 2042 254
E-Mail: birgit.kersten@bildung-lsa.de

Kapitel:
Viele unserer Medien sind bereits in Kapitel eingeteilt, damit Sie schneller navigieren können. Dieses Medium hat leider bisher noch keine Kapitel.

      


Rekursion

Rekursion In jedem Formular in Delphi ist ein (ganzzahliges) Koordinatensystem eingebettet. Der Ursprung ist der Punkt links oben. Die x-Achse verläuft, wie üblich, von links nach rechts. Die y-Achse dagegen wächst von oben nach unten. Jedem Punkt auf dem Formular ist daher ein Paar ganzzahlig positiver Koordinaten zugeordnet. Die Einheit, in der die Koordinatenwerte angegeben sind, ist die Anzahl der Pixel, die der Punkt in waagerechter oder senkrechter Entfernung vom Ursprung liegt. Das erste gezeichnete Dreieck nennt man Initiator. Er beschreibt das „initiale“ (erste) Objekt. Die Bildungsregeln 2 und 3 heißen Generator. Sie geben an, wie neue Dreiecke „generiert“ werden. Das folgende Arbeitsblatt begleitet die Umsetzung eines Programms zur Erstellung von Sierpinsky-Dreiecken. Führt man dieses Verfahren endlos fort, so entsteht als Grenzfigur das so genannte Sierpinsky-Dreieck. Dabei ist jedes Teildreieck zum gesamten Dreieck ähnlich. Bewegen des Cursors Rekursion ist neben der Iteration das mächtigste Werkzeug der Programmierung. Jedes denkbare Programm kann lediglich durch Zuweisungen, Verzweigungen und Rekursionen (oder Iterationen oder Sprünge) programmiert werden. Bevor wir uns der Rekursion zuwenden, betrachten wir selbstähnliche Figuren: Fraktale. Die Fläche, auf der wir zeichnen, heißt Canvas (Leinwand) und ist ein Attribut des Formulars. Um den (unsichtbaren) Zeichencursor (ohne zu zeichnen) an eine bestimmte Position zu bringen, können wir die Operation MoveTo verwenden.Beispiel: Form1.canvas.MoveTo(23, 117);Der Befehl bewegt den Zeichencursor an den Punkt (23|117). Sie benötigen ein leeres Blatt in DIN-A4-Größe, einen Bleistift und ein Lineal. Zeichnen Sie ein beliebiges Dreieck. Die Seitenlängen sollten ca. 10-15cm betragen. Markieren Sie die Mitten der Seiten und verbinden Sie jeweils zwei Seitenmitten miteinander durch eine Strecke. Es entstehen so 4 Teildreiecke. Wiederholen Sie den zweiten Schritt mit den drei äußeren Teildreiecken Zeichnen einer Strecke Die Operation LineTo zeichnet eine Strecke vom aktuellen Punkt des Zeichencursors zu den Zielkoordinaten. Beispiel: Form1.canvas.LineTo(47,11);Der Befehl zeichnet eine Linie von der aktuellen Position P zum Punkt (47|11). pEin strongFraktal strongist eine (geometrische) Figur, die aus einem strongTeil strongbesteht, derstrong zu der gesamten Figur ähnlichstrong ist. Eine solche Figur muss zwangsweise unendlich sein, wir können sie nur annähern. Ein einfaches Beispiel ist das strongSierpinsky-Dreieckstrong.p Fraktal Zeichnen mit Delphi gleichseitiges Sierpinsky-Dreieck Zeichnen des Dreiecks Der Benutzer gibt die Koordinaten dreier verschiedener Punkte A,B,C ein. Die Punkte sollen nicht auf einer Linie liegen. Das Programm zeichnet dann das Dreieck ΔABC. Überlegen Sie sich mögliche Fehler, die dem Benutzer bei der Eingabe der Punkte unterlaufen könnten. Notieren Sie Beispiele und Lösungsmöglichkeiten. Falsche oder unsinnige Eingaben sollen abgefangen werden. Der Benutzer erhält eine möglichst gute Fehlermeldung per showmessage-Befehl und die Werte werden auf einen Standardfall gesetzt. Da Fraktale jeweils nur geometrische Grenzwerte darstellen, können wir sie nur durch endlich viele Schritte annähern. Ein Schritt bedeutet, dass der Generator einmal ausgeführt wird. Unser Ziel ist nun, ein Programm zu schreiben, welches das Sierpinsky-Dreieck durch eine vom Benutzer eingegebene Zahl von Schritten annähert. Schreiben Sie eine Prozedur Generator. Die Prozedur arbeitet die Schritte aus Aufgabe 6 nacheinander ab. Verwenden Sie folgende Signatur:Procedure Generator(k: integer; A,B,C : TPoint); Rechenweg pDie Koordinaten des Mittelpunktes M sind die Koordinaten des (gerundeten) arithmetischen Mittels der Koordinaten der Punkte A und B. ppM.x=(A.x+B.x)2ppM.y=(A.y+B.y)2.p Schreiben Sie eine FunktionMittelpunkt: TPoint × TPoint → TPoint, die den Mittelpunkt der Strecke zwischen zwei Punkten berechnet. Schreiben Sie eine Prozedur ZeichneStrecke, die eine Strecke zwischen zwei Punkten zeichnet. Verwenden Sie den vorgefertigten Datentyp TPoint. Testen Sie ihre Prozedur.Procedure ZeichneStrecke(A,B: TPoint); Datentyp TPoint pstrongtype strongTPoint = strongrecordstrong x : integer; y : integer;strongendstrong;p (Vorbereitende Aufgabe)Schreiben Sie ein Programm, das eine Strecke zwischen zwei vom Benutzer eingegebenen Punkten zeichnet. Die Eingabe der Koordinaten erfolgt für jeden Punkt durch Angabe der x- und der y-Koordinate in je einer Editkomponente. Sortieren Sie die Arbeitsschritte nach Ihrer Reihenfolge! Zeichne das Dreieck. Prüfe, ob die Zahl der noch auszuführenden Schritte k größer als null ist. Falls nein, beende das Zeichnen. Berechne die Mittelpunkte der drei Seiten. Verringere die Schrittzahl k um eins. Führe den Genrator mit den äußeren drei Teildreiecken aus.

Lizenzdauer: unbegrenzt

Sie benötigen einen emuTUBE-Zugang für Ihre Schüler? Kein Problem. Wählen Sie aus den untenstehenden Möglichkeiten die gewünschte Funktion aus. Nach „Freigabe erstellen“ wird ein Zugangscode/Zugangslink erzeugt. Bitte teilen Sie diesen Ihren Schülern mit. Die Schüler müssen den Zugangscode auf der Startseite von emuTUBE eingegeben oder den Link in der Adressleiste des Browsers eintragen. Die Downloadfunktion steht aus rechtlichen Gründen für Lernende nicht zur Verfügung. Nach Ablauf des gewählten Zeitfensters verfällt der Zugangscode bzw der Zugangslink.

Freigabe für den Film "Rekursion" erstellen




Sie dürfen das Medium (Film/Audio) und die dazugehörigen Materialien:
  • nur im Unterricht/unterrichtlichen Kontext einsetzen,
  • herunterladen, auch abschnittsweise (Clip), abspeichern,
  • be- und verarbeiten sowie mit anderen Materialien nur zu Übungszwecken zusammenstellen ohne Veröffentlichung außerhalb des Klassenverbandes,
  • den Schülern ihrer Klasse über emuEI (Freigabe) einen Zugang zu den Medien geben und
  • es innerhalb der Lizenzzeit einsetzen.
Alles was nicht ausdrücklich erlaubt ist, ist nicht gestattet. Bei Nachfragen nehmen Sie bitte Kontakt zu Frau
Birgit Kersten auf.


Verfügbare Materialien zum Download

Keine Downloads vorhanden!

Clips für den Film "Rekursion"


Derzeit keine gespeicherten Clips (Filmausschnitte) verfügbar!