Huelsse/Profil Nawi/Java/Java-Turtle - geschachtelte Iteration

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

'''Geschachtelte Zählschleife - Iteration'''
----

{|
 |-
 | Beim Zeichnen der drei ineinander geschachtelten Quadrate werden folgende Anweisungen 4 mal wiederholt:
  <BR>for (int i = 1;      i < 5;       i++ ) <BR>*   {	turtle.forward(100);<BR>*       turtle.right(90);} 
 || [[Bild:Koehler_Turtle1_quadrat.jpg]]  
 |}

Mit zwei ineinander geschachtelten Zählschleifen können Anweisungsblöcke innerhalb einer Zählschleife (Zeichen ein Quadart) ebenfalls mehrfach ausgeführt werden ausgeführt werden:

* for (int j = 1;      j < 4;       j++ )  -  Äußere Schleife - damit 3 Quadrat gezeichnet werden
* for (int i = 1;      i < 5;       i++ ) {turtle.forward(seitenlaenge);turtle.right(90);} - Innere Schleife - zeichnet das Quadrat
* häufig werden Anweisungen auch in Form von Struktogrammen dargestellt


{| 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 die obere Turtle-Grafik "geschachtelte Quadrate" mit 3 Zählschleifen:
* 1. Schleife: 1 Quadrat, Standardschrittweite: 50
* 2. Schleife: 1 Quadrat, Standardschrittweite: 75
* 3. Schleife: 1 Quadrat, Standardschrittweite: 100
* Startposition: Canvasmitte

{|- 
 |- 
 | '''Quadratturm: 100, 75, 50'''        ||  
 |- 
 | <run id="4dd0206ebbf2b">
canvas.clear();
turtle.home();
turtle.penDown();


</run> 
|| <canvas>
 </canvas>

 |}