Zählschleife: for
Quadrat fahren mittels for-Schleife (Zählschleife)
Dieser Schleifentyp eignet sich besonders, wenn man die Anzahl an Wiederholungen im Vorfeld kennt, wie zum Beispiel: "Fahre ein Quadrat!". Der Roboter muss viermal eine Strecke zurücklegen und sich zwischenzeitlich immer um 90 Grad drehen.
Im Flussdiagramm führt ein Pfeil (blau) entsprechend wieder zurück (vergleichbar mit einer Rückkopplung). Dabei ist dieser von einer Bedingung abghängig, dem Abbruchkriterium. Um die Anzahl an benötigten Wiederholungen mitzuprotokollieren und zu überprüfen, benutzt man eine Zählvariable (counter
).
Die Methoden drehungX(..)
und geradeausfahrt(dist)
sind bereits bekannt, daher legen wir hier das Augenmerk auf die eigentliche Schleife.
...
public class ForSchleife
{
...
public static void main(String[] args)
{
...
// for-Schleife
for (int counter = 0; counter < 4; counter=counter+1)
{
geradeausfahrt(dist);
drehungX(false, 90);
}
}
...
}
Der Aufbau einer for-Schleife folgt einer vorgeschriebenen Syntax. Im Rumpf der Schleife findet man eine Menge von (wiederholt) auszuführenden Anweisungen (hier drehungX(..)
und geradeausfahrt(dist)
). Die allgemeine Syntax besteht aus:
for | Initialisierung | Abbruchkriterium | Schrittweite | {Anweisungen} |
---|---|---|---|---|
for | int counter=0 | counter < 4 | counter=counter+1 | {...} |
Erklärung:
- for
- Schlüsselwort zum Einleiten der for-Schleife
- Initialisierung
- Startwert(e) für die Zählvariable(n)
- Abbruchkriterium
- Bedingung(en) für das Ausführen des Schleifenrumpfs. Ist die Bedingung nicht (mehr) erfüllt, dann setzt das Programm in der nächsten Anweisung unterhalb der Schleife fort.
- Schrittweite
- Richtung (Hochzählen | Runterzählen) und Schrittweite (+1|+2|...) für nach jedem Schleifendurchlauf werden hier festgelegt.
- {Anweisungen}
- diese Menge von Anweisungen werden pro Schleifendurchlauf jeweils einmal ausgeführt.
Quellen
- [1]: Fahren eines Quadrats - Urheber: mks - Lizenz: inf-schule.de
- [2]: Flussdiagramm zur for-Schleife - Urheber: mks - Lizenz: inf-schule.de