Java-Turtle - Verzweigungen
Aus ProgrammingWiki
Archivierte Version vom 2011-06-05T15:12:41+00:00. Aktuelle Version
Java Turtle - Verzweigung
Einseitige Verzweigungmi IF
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())
Zweiseitige Verzweigungmi IF - ELSE
Mit IF-Blöcken (einseitige Verzweigungen) können Annweisungen nur bei bestimmten Bedingungen ausgeführt werden
Erklärung der Anweisungen:
- turtle.left(45); - Blickrichtung Turtle ist 45° links
- for (int i = 1; i <= 21; i++ ) Zählschleife, wiederholt folgenden Anweisungen 20 mal:
- 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.right(90)()
- Ist der Divisions rest ungleich 0, also eine ungerade Zahl, dann wird die ELSE-Anweisung ausgeführt:
- turtle.left(90)()
- turtle.forward(10); - Anschließend läuft der Turtle 10 Schritte in der gewählten Richtung vorwärts
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 | |
| | |
turtle.left(45);
for (int i = 1; i <= 21; i++ )
{
if (i % 2 == 0)
{ turtle.right(90); }
else
{ turtle.left(90); }
turtle.forward(10);
}


