Java-Turtle - Prozeduren - mit Parametern

Aus ProgrammingWiki
Archivierte Version vom 2012-05-06T14:56:26+00:00. Aktuelle Version

Java-Turtle - Prozeduren - mit Parametern


Beim Zeichnen dieser sechs Dreiecke kann das Zeichnen eines einzelnen Dreiecks als Teilprogramm erstellt werden, mit unterschiedlicher Seitenlänge kann die Figur größenmäßig verändert werden. Dabei wird beim Aufruf des Teilprogramms der Parameter für die Seitenlänge als aktueller Wert übergeben (dreieck(50)). Die Prozedur dreieck übernimmt den aktuellen Parameter (50) anstelle der vordefinierten Werte - formalen Parameter (dreieck(int s)):

 
void dreieck(int s)
{
for (int i = 1; i < 4; i++ )
{
turtle.forward(s);
turtle.right(120);
}
}

canvas.clear();
turtle.home();
turtle.penDown();
for (int i = 1; i < 7; i++ )
{
dreieck(50);
turtle.right(60);
}
for (int i = 1; i < 7; i++ )
{
dreieck(100);
turtle.right(60);
}
| Koehler_Turtle9_Dreiecksblume.jpg

Eine Prozedur ist in der Programmierung eine Folge von Anweisungen, die es erlaubt, bestimmte Aufgaben in wiederverwendbarer Art zu formulieren:

  • Java:
  • void dreieck(int s) - Teilprogramm dreieck() mit formalem Parameter s vom Typ integer - Achtung: ohne Semikolon
  • dreieck(50); - Aufruf des Teilprogramms dreieck(50); im Hauptprogramm mit aktuellem Parameter: 50
  • Delphi:
  • procedure dreieck(s: integer); - Teilprogramm dreieck()mit formalem Parameter s vom Typ integer - Achtung: hier mit Semikolon
  • dreieck(50); - Aufruf des Teilprogramms dreieck(50); im Hauptprogramm mit aktuellem Parameter: 50


StruktogrammJava QuelltextPascal Quelltext
Koehler_Dreiecksblume2.png
void dreieck(int s)
{
for (int i = 1; i < 4; i++ )
{
turtle.forward(s);
turtle.right(120);
}
}

canvas.clear();
turtle.home();
turtle.penDown();
for (int i = 1; i < 7; i++ )
{
dreieck(50);
turtle.right(60);
} for (int i = 1; i < 7; i++ )
{
dreieck(100);
turtle.right(60);
}

procedure dreieck(s: integer);
var i: integer;
begin
for i := 1 to 3 do
begin
turtle_forward(s);
turtle_right(120);
end;
end;

canvas_clear();
turtle_home();
turtle_penDown();
for i:=1 to 6 do
begin
dreieck(50);
turtle_right(60);
end;
for i:=1 to 6 do
begin
dreieck(100);
turtle_right(60);
end;


Erstellen Sie die obere Turtle-Grafik "Dreiecksblume" mit einer Prozedur dreieck():

  • void dreieck(int s): Teilprogramm zum Zeichnen eines einzelnen Dreiecks
  • Hauptprogramm: hier wird das Teilprogramm einmal mit dem aktuellem Parameter 100: dreieck(100) sowie dem Parameter 50: dreieck(50) aufgerufen
  • Schrittweite für s: 100
  • Startposition: Canvasmitte
Dreiecksblume
| Ihr Browser unterstützt Canvas nicht.