Skip to content

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.

  1. 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.
  2. Im Prototypen ist die Szene bereits erstellt, nur die Methode animiere() muss noch ergänzt werden. Implementiere diese Methode.
Reparatur

Ü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.

23Pendel
2.5 Übungen zu Zählschleifen

Ü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 Klasse SGKreis und ein Objekt der Klasse SGRechteck.
  • 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 mit setzeHoehe(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.