Java-Turtle - Verzweigungen

Aus ProgrammingWiki
Archivierte Version vom 2011-06-05T14:24:05+00:00. Aktuelle Version

Java Turtle - Verzweigung


Hier muss sich der Turtle entscheiden (Verzweigung):
Er geht 20 mal 10 Schritte voran, ist bei den 20 Wiederholungen für die Laufvariable i eine gerade Zahl erreicht, dann wird der Stift gehoben und 10 Schritte ohne Zeichnen vorwärts gegangen

*   turtle.left(90);
* for (int i = 1; i < 21; i++)
* {
* turtle.penDown();
* if (i % 2 == 0)
* { turtle.penUp(); }
*
* turtle.forward(10);
* }
| Koehler_Turtle4_Strichlinie.jpg

Mit IF-Blöcken (einseitige Verzweigungen) können Annweisungen nur bei bestimmten Bedingungen ausgeführt werden
Erklärung der Anweisungen:

  • turtle.left(90); - Blickrichtung Turtle ist links
  • for (int i = 1; i <= 21; i++ ) Zählschleife, wiederholt folgenden Anweisungen 20 mal:
  • turtle.penDown(); - Absetzen des Stiftes zum Zeichnen
  • if (i % 2 == 0) - Start der Einseitgen Verzweigung: % - Modula-Operation - untersucht den gangzahligen Divisionsrest, ist dieser gleich 0, also eine gerade Zahl, dann wird der Anweisungsblock der Verzweigung ausgeführt, hier:
  • turtle.penUp()
  • turtle.forward(10); - Anschließend läuft der Turtle 10 Schritte, bei gerader Laufvariable i wird keine Linie gezeichent (turtle.penUp())


StruktogrammJava QuelltextPascal Quelltext
Koehler_STRICHLINIE.pngturtle.left(90);
for (int i = 1; i <= 21; i++ )
{
turtle.penDown();
if (i % 2 == 0)
{
turtle.penUp();
}
turtle.forward(20);
}
turtle.left(90);
begin
for i := 1 to 20 do
begin
turtle_penDown();
IF ( i mod 2 = 0 );
turtle_penUp();
end;
turtle_Forward(10);


Erstellen Sie die obere Turtle-Grafik "geschachtelte Quadrate" mit 2 Zählschleifen:

  • 1. Äußere Schleife: ruft das Zeichnen eines Quadrates dreimal auf, erhöht anschließend die Schrittweite
  • 2. Innere Schleife: Zeichnet das Quadrat mit der gewünschten Seitenlänge s
  • Startschrittweite für s: 50
  • Startposition: Canvasmitte
geschachtelte Quadrate: 50, 75, 100
| Ihr Browser unterstützt Canvas nicht.