Huelsse/Profil Nawi/Java/Java-Turtle - Schleifen mit oberer Abbruchbedingung - Übung

Aus ProgrammingWiki

Wiki-Quelltext dieser Seite.

<language>Java</language>
'''Java Turtle - WHILE-Schleifen mit oberer Abbruchbedingung, Anzahl der Wiederholungen unbekannt '''

----

Zur Erinnerung:

Häufig wird man nicht genau wissen, wie oft man einen bestimmten Zyklus durchlaufen muss:
* Gehe solange shoppen, bis dein Konto leer ist, aber überziehe dein Konto nicht!
* Dividiere solange zwei zufällig erzeugte natürliche Zahlen, bis für den Divisor zufällig Null erzeugt wurde! 

Für diese Beispiele werden Schleifen mit vorangestelltem Testktiterium benötigt.

* Schleifen mit oberer Abbruchbedingung: while (Testkriterium) { Schleifenkörper }

Bearbeite folgende Aufgaben effizient mit mindestens einer WHILE-Schleife:

{|- 
 |   '''Turtle - Rennen 1'''  <BR> Ein Turtle soll 100 Schritte zufällig zurücklegen <BR>Dabei werden Teilstrecken von max. 6 Schritten zufällig erzeugt: Math.random() * 5;<BR> Die Versuche werden mitgezählt und anschließend ausgegeben: System.out.println("Benötigte Versuche: " + versuch); ||  '''Turtle - Rennen 2'''
 |-
 | [[Bild:Koehler_Turtle6_Rennen1.jpg]] <canvas></canvas> ||  [[Bild:Koehler_Turtle6_Rennen2.jpg]] <canvas></canvas>
 |- 
 | <code id="4dd23521c2c82" hidden>import Canvas; canvas = new Canvas(1); turtle = new Turtle(1);</code><run id="4dc841823ea6e">
canvas.clear();
turtle.home();
turtle.penDown();
turtle.left(90);
int versuch = 0;
int teilweg = 0;
int weg = 0;
</run> ||

<code id="4dd23521c2cec" hidden>import Canvas; canvas = new Canvas(2); </code>
<run id="4dcc34b00d65b"> 
canvas.clear();
turtle.home();
turtle.penDown();

</run>


 |- 
 | '''Sechseck - Schrittweite 50'''        ||  '''Kreis:  - Schrittweite 1'''
 |-
 | [[Bild:Koehler_Turtle2_sechseck.jpg]] <canvas></canvas> ||  [[Bild:Koehler_Turtle2_kreis.jpg]] <canvas></canvas>
 |- 
 | <code id="4dd237132b1a4" hidden>import Canvas; canvas = new Canvas(3); turtle = new Turtle(3);</code><run id="4dd0206ebbf2b">
canvas.clear();
turtle.home();
turtle.penDown();

</run> ||

<code id="4dd237132b24c" hidden>import Canvas; canvas = new Canvas(4); turtle = new Turtle(4);</code>
<run id="4dd0206ebbf9a">
canvas.clear();
turtle.home();
turtle.penDown();

</run>


 |- 
 | Eigene Idee 1 <br><canvas></canvas> ||  Eigene Idee 2 <br><canvas></canvas>
 |- 
 | <code id="4dd2377d7a2ed" hidden>import Canvas; canvas = new Canvas(5); turtle = new Turtle(5);</code><run id="4dd03082c8045">
canvas.clear();
turtle.home();
turtle.penDown();

</run> || 
<code id="4dd237132b2c1" hidden>import Canvas; canvas = new Canvas(6); turtle = new Turtle(6);</code><run id="4dd03082c815d">
canvas.clear();
turtle.home();
turtle.penDown();

</run>
 
|}

'''Aufgabe 3:'''
*   Welche weitere Vereinfachung wäre beim Zeichnen dieser Figur hilfreich?
[[Bild:Koehler_turtle2_geschachtle_quadrate.jpg]]