Huelsse/Profil Nawi/Java/Java-Turtle - Wiederholungsanweisungen
Aus ProgrammingWiki
Wiki-Quelltext dieser Seite.
<language>Java</language>
'''Java Turtle - Wiederholungsanweisungen und Struktogramme'''
'''Gezählte Wiederholung - Zählschleife - Iteration'''
----
{|
|-
|
Beim Zeichnen der drei ineinander geschachtelten Quadrate werden folgende Anweisungen 4 mal wiederholt:
<BR>* turtle.forward(100);<BR>* turtle.right(90);
|-
| [[Bild:Koehler_Turtle1_quadrat.jpg]]
|}
Mit einer Zählschleife können Anweisungsblöcke "i-mal" ausgeführt werden:
* FOR (i = STARTWERT, i < ENDWERT, i++ Erhöhen der Laufvariable ) {ANWEISUNGSBLOCK}
* for (int i = 1; i < 5; i++ ) {turtle.forward(100);turtle.right(90);}
* häufig werden Anweisungen auch in Form von Struktogrammen dargestellt
'''Struktogramme:'''
* kurze, knappe , graphische Darstellung
* unabhängig von der Programmieumgebung
* Blauer Teil: Anweisungsblock, der wiederholt werden soll
* Gelber Teil: gibt an, von welchem Start bis zu welchem Endwert der blaue Teil wiederholt wird
* Dabei wird eine VARIABLE (Platzhalter) benötigt (hier i)
* i ist in unserem Beispiel ganzzahlig (Datentyp int in JAVA) und wird bei jedem Schleifendurchlauf um 1 erhöht (i++)
<BR>
{| border="1"
|-
| Struktogramm || Java Quelltext || Pascal Quelltext || xx Quelltext
|-
| [[Bild:Koehler_For_schachtel_quadrate.png]] || for (int i = 1; i < 5; i++ ) <BR> { <BR> turtle.forward(100);<BR>turtle.right(90);<BR>}<BR> || for i := 1 to 4 do <BR> begin <BR> turtle_forward(100);<BR>turtle_right(90);<BR>end;<BR> ||
|}
<BR>
Informiere Sie sich: [http://de.wikipedia.org/wiki/Nassi-Shneiderman-Diagramm |http://de.wikipedia.org/wiki/Nassi-Shneiderman-Diagramm ]
* Seit wann werden Struktogramme verwendet?
* Mit welchem graphischen Grundelement könnte man die beiden folgenden Anweisungen auch darstellen:
* turtle.forward(100);
* turtle.right(90);
* Welche Figur entsteht wenn das Struktogramm als Quelltext abgearbeitet wird?
<BR>
Erstellen Sie obere Turtle-Grafik geschachtelte Quadrate mit 3 Zählschleifen:
* 1 Schleife: 1 Quadrat, Standardschrittweite: 50
* 1 Schleife: 1 Quadrat, Standardschrittweite: 75
* 1 Schleife: 1 Quadrat, Standardschrittweite: 100
* Startposition: Canvasmitte
{|-
|-
| '''Quadratturm: 100, 75,50''' ||
|-
| <run id="4dd0206ebbf2b">
canvas.clear();
turtle.home();
turtle.penDown();
for (int i = 1; i<5; i++)
{turtle.forward(100); turtle.right(90);}
for (int i = 1; i<5; i++)
{turtle.forward(75); turtle.right(90);}
for (int i = 1; i<5; i++)
{
turtle.forward(50); turtle.right(90);}
</run>
|| <canvas>
</canvas>
|}