Einzelnen Beitrag anzeigen

Flo.Hoe

Registriert seit: 28. Sep 2006
Ort: Berlin
73 Beiträge
 
Turbo C++
 
#1

Sich selbst aufrufender Algorithmus

  Alt 25. Apr 2007, 20:20
Ich habe Ein kleines Programm erstellt, mit dem ein Fraktal gezeichnet werden kann.
(Ein Fraktal ist dadurch gekennzeichnet, dass seine einzelnen Bestandteile die selbe Erscheinung haben, wie das Gesamtbild).

Meine Frage ist: Wie kann ich eine Prozedur/Funktion in sich selbst aufrufen lassen.


Bisher habe ich das Problem gelöst indem ich viele Einzelne Prozeduren erschaffen habe, aber dadurch wird der Quelltext ziemlich unübersichtlich.

Delphi-Quellcode:
    Procedure Zeichnen1(x,y:integer;a:real);
    Procedure Zeichnen2(x,y:integer;a:real);
    Procedure Zeichnen3(x,y:integer;a:real);
    ......
Delphi-Quellcode:
Procedure TForm1.Zeichnen1(x,y:integer;a:real);
begin
Dreieck(x,y,a);
Dreieck(round(x+a),y,a);
Dreieck(round(x+a/2),y-round(sqrt(3)*a/2),a);
end;



Procedure TForm1.Zeichnen2(x,y:integer;a:real);
begin
Zeichnen1(x,y,a/2);
Zeichnen1(round(x+a),y,a/2);
Zeichnen1(round(x+a/2),y-round(sqrt(3)*a/2),a/2);
end;


Procedure TForm1.Zeichnen3(x,y:integer;a:real);
begin
Zeichnen2(x,y,a/2);
Zeichnen2(round(x+a),y,a/2);
Zeichnen2(round(x+a/2),y-round(sqrt(3)*a/2),a/2);
end;



Procedure TForm1.Zeichnen4(x,y:integer;a:real);
begin
Zeichnen3(x,y,a/2);
Zeichnen3(round(x+a),y,a/2);
Zeichnen3(round(x+a/2),y-round(sqrt(3)*a/2),a/2);
end;
Miniaturansicht angehängter Grafiken
fraktal_212.jpg  
Florian
  Mit Zitat antworten Zitat