Zählschleifen in Java
Aus Scratch oder dem MIT App Inventor kennt ihr Kontrollstrukturen, die ein Programm einfacher machen. Natürlich gibt es diese auch in der Programmiersprache Java und wir können sie in unseren Programmen nutzen.
Wird eine Anweisung wiederholt, nutzen wir eine Schleife. Wissen wir, wie oft wiederholt werden soll, so bietet sich eine Zählschleife an.
Zählschleife
In der Programmiersprache Java sieht der Rahmen einer Zählschleife folgendermaßen aus:
Es gibt dort eine Zählvariable i, für die man einen Startwert, einen Endwert und eine Schrittweite angeben kann. Zwischen den geschweiften Klammern steht das, was wiederholt werden soll. Die Zählvariable darf dabei genutzt werden.
In Klammern wird zuerst die Variable i deklariert (bekannt gemacht) und initialisiert (sie bekommt den Wert 0 zugewiesen). Das int
gibt an, dass i nur ganze Zahlen als Wert annehmen kann.
Dann wird mit i <=2 die Bedingung vorgegeben, dass die Schleife nur durchlaufen wird, wenn i höchstens 2 ist.
Das i++ könnte auch i = i + 1 heißen und bedeutet, dass i nach jedem Schleifendurchlauf um 1 erhöht wird. Also nimmt die Variable i die Werte 0, 1 und 2 in unserem Beispiel an.
Aufträge:
Ergänze in der Vorlage figurC_mitSchleife aus dem Tauschverzeichnis die Methode zeichneBildC() so, dass zunächst die drei Kreise in das Quadrat gezeichnet werden. Nutze dazu eine Zählschleife.
Für die drei Quadrate in dem anderen Kreis kannst du auch eine Schleife verwenden. Suche wieder nach den Regelmäßigkeiten für den Startpunkt der Quadrate und für die Seitenlänge (bzw. Breite) und schreibe dein Programm um. (Bei deiner Lehrerin gibt es Hilfekarten, wenn du Hilfe brauchst!)
Weitere Übungen
Nutze für die weiteren Übungen eine neue Datei, in der du die eigenen Methoden schreibst und in der setup()-Methode aufrufst.
Schreibe eine Methode zeichneQuadrate(), die 10 Quadrate gleicher Größe direkt nebeneinander zeichnet.
Schreibe eine Methode zeichneKreise(), die 20 Kreise ineinander, die immer kleiner werden, zeichnet.
*** Schreibe die beiden Methoden aus 3. und 4. so, dass man ihnen die Anzahl der Quadrate bzw. Kreise übergeben kann. Hol dir dazu das Infoblatt zu Methoden in Java.
Hilfekarten zu Aufgabe 2
Tipp 1
Bei den Quadraten ändert sich sowohl der Startpunkt als auch die Seitenlänge.
Versuche zuerst, x- und y-Koordinate des Eckpunktes zu beschreiben.
Tipp 2
Beim ersten Quadrat ist x = 30 und y = 140.
Beim zweiten Quadrat ist x = 40 und y = 150.
Überlege dir auch die Koordinaten beim dritten Quadrat und suche nach der Veränderung.
Tipp 3
Die Veränderung ist 10 bei beiden Koordinaten.
In der Schleife bei i = 0 bleibt es bei 30 und 140, bei i = 1, wird jeweils 1 * 10 addiert, bei i = 2, wird 2 * 10 addiert, usw.
Versuche, die beiden Koordinaten mit i auszudrücken.
Tipp 4
x berechnet sich durch 30 + i * 10
y berechnet sich durch 140 + i * 10
Überlege dir jetzt, wie du auf die beiden restlichen Werte (die Breite und Höhe der Quadrate) kommst.
Tipp 5
Die beiden Werte sind gleich, da es sich um Quadrate handelt.
Beim ersten Quadrat ist der Wert 60, dann 40, dann 20.
Beschreibe den Wert wieder mithilfe der Schleifenvariable i.
Tipp 6
Breite und Höhe lassen sich durch 60 – i * 20 berechnen.
Lösung
rect(30+i*10, 140+i*10, 60–i*20, 60–i*20);
Solltest du den Weg nicht verstanden haben, sieh dir das Video „Zählschleife Quadrat“ an.
Folie für die Plenumsphase zu Beginn
Zählschleifen in Java: Herunterladen [odt][125 KB]
Zählschleifen in Java: Herunterladen [pdf][152 KB]
Weiter zu Zählschleifen-Puzzle