2.5 Übungen zu Zählschleifen
Übung 1: Windrad-Reparatur
In der nebenstehenden Animation ist ein Windrad zu sehen, das sich dreht. Während des Betriebs kommt es zu einer Störung, was durch ein blinkendes Warnlicht angezeigt wird. Zur Reparatur muss ein Auto zum Windrad fahren.
- Für diese Animation sind drei Schleifen nötig. Gib an, für welche der drei Schleifen als Bedingung eine Zählvariable gut geeignet ist.
- Im Prototypen ist die Szene bereits erstellt, nur die Methode
animiere()
muss noch ergänzt werden. Implementiere diese Methode.

Übung 2: Pendel
In diesem Projekt soll ein animiertes Pendel erstellt werden. In der Animation siehst du das Ergebnis, das implementiert werden soll. Die Szene selbst ist im Prototypen bereits implementiert. Es muss noch die Methode fuehreAus
anhand des nebenstehenden Struktogramms implementiert werden.


Übung 3: Jojo
In diesem Projekt sollst du ein animiertes Jojo erstellen, das sich einmal nach unten bewegt und dann wieder aufrollt. Im nebenstehenden Video kannst du einen Eindruck davon bekommen, wie das Programm ablaufen soll. Folgende Hinweise können dir helfen, um das Programm zu realisieren:
- Neben einem Objekt der Klasse
SGLeinwand
werden nur zwei weitere Objekte benötigt: Ein Objekt der KlasseSGKreis
und ein Objekt der KlasseSGRechteck
. - Das Abrollen des Jojos besteht aus einer Schleife, das Aufrollen des Jojos besteht aus einer zweiten Schleife, die nach der ersten Schleife ausgeführt wird.
- Für die Bedingungen der Schleifen gilt: Es muss jeweils die y-Position des
SGKreis
-Objekts überprüft werden. - Die Länge des Bandes kann auf verschiedene Arten realisiert werden: Entweder nutzt man eine Zählvariable, die man in der ersten Schleife hochzählt und der in der zweiten Schleife wieder herunterzählt. Oder man erhöht die Höhe des Rechtecks jeweils, indem man die momentane Höhe mit
gibHoehe()
abfragt, diese um 1 erhöht und dann mitsetzeHoehe(double pHoehe)
wieder einsetzt.
faden.setzeHoehe(faden.gibHoehe() + 10 );
Zusatzaufgabe
Das Jojo lässt sich noch erweitern, indem man die Geschwindigkeit variiert: Anfangs rollt sich das Jojo langsamer ab und je länger es sich abrollt, desto schneller wird es. Beim Aufrollen wird es mit zunehmender Höhe wieder langsamer. Dies lässt sich erreichen, indem die aktuelle Geschwindigkeit des Jojos in einer Variablen gespeichert wird.
