Übungen
Erweiterungen und Übungen zu "Frog"
Aufgabe 1 - Greenfoot-Klassen
Aufgabe 2 - Frog erweitern
Das Spiel lässt sich auf vielfältige Art verschönern und erweitern:
- Beim Start oder Beenden des Spiels soll eine kurze Audiodatei abgespielt werden. (Quelle, Lizenz: CC-BY-NC-SA 3.0)
- Die Grafik des Frosches soll beim Sterben kleiner werden.
- Gegessene Fliegen sollen halbtransparent sein anstatt zu verschwinden. Natürlich soll eine Fliege nicht zwei mal gegessen werden können.
- Die Kraft des Frosches soll immer bei der Grafik angezeigt werden.
- Wenn man eine Fliege gegessen hat, soll kurz eine 10 als Grafik erscheinen. Diese soll anzeigen, dass man gerade 10 Punkte bekommen hat. Nach ein paar Act-Schritten soll diese verschwinden.
- Sorge dafür, dass Fliegen und Störche beim Erzeugen der Welt nicht übereinander liegen. (schwer)
Bestimmt fallen Dir tolle, eigene Erweiterungen ein...
Aufgabe 3 - Anzeige auf der Welt
Beim Beenden des Spiels soll auf der Welt "Game Over" angezeigt werden. Zwei Varianten zur Ergänzung der act-Methode des Frosches werden Dir angeboten:
Nur eine der beiden Varianten funktioniert. Begründe - möglichst ohne vorheriges Testen - welche funktioniert.
Weitere Übungen
Aufgabe 4 - Java Klassenbibliothek
Java stellt viele Klassen direkt zur Verfügung. Öffne deren Dokumentation z.B. in Greenfoot über Hilfe→ Java Klassenbibliotheken. Erkunde die Klassen String
und Random
und experimentiere im Codepad, um folgende Aufgaben zu lösen:
- Die Länge einer Zeichenkette soll zurückgegeben werden.
- Es soll überprüft werden, ob eine Zeichenkette mit "Hallo" beginnt.
- Eine Zufallszahl zwischen 0 und 9 soll berechnet werden.
- Es soll ein zufälliger Wahrheitswert berechnet werden.
(Zusatzaufgabe: Was hat es mit dem seed
auf sich? )
Aufgabe 5 - Schleifen
- Die Zahlen von 20 bis 1 sollen abwärts ausgegeben werden. Erstelle eine Variante mit while-Schleife und eine Variante mit for-Schleife.
- Schreibe eine Methode, die als Parameter eine ganze Zahl übergeben bekommt. Die Methode soll dann alle geraden Zahlen, die kleiner oder gleich n sind, ausgeben. Erstelle eine Variante mit while-Schleife und eine Variante mit for-Schleife. (Tipp: Der Modulo-Operator
%
berechnet den Rest einer Division. Beispiel:14 % 5
ergibt 4. - Berechne den Durchschnitt von 1000 Zufallszahlen aus dem Bereich von 0..10. (Zur Erinnerung: Eine Zufallszahl lässt sich z.B. mit Hilfe des Ausdrucks
new java.util.Random().nextInt(...)
berechnen.) - Schreibe eine Methode, die als Parameter eine ganze Zahl übergeben bekommt. Die Methode soll dann die Summe aller Quadratzahlen bis zu dieser Zahl berechnen und zurück geben. (z.B. f(20) = 1 + 4 + 9 + 16 = 30). Wähle eine geeignete Schleifenvariante.
- Berechne wie oft man durchschnittlich würfeln muss, um einen Zweierpasch zu würfeln.
- Formuliere möglichst viele Varianten für Endlosschleifen. Darunter auch mindestens eine for-schleife.