Übungen: Hölzchenspiel
Ausgangslage
Schreiben sie ein Programm, damit zwei Benutzer dieses einfache Kinderspiel spielen können.
- Zu Beginn liegen auf einem Haufen 21 Streichhölzer.
- Spieler 1 beginnt
- Solange noch Streichhölzer vorhanden sind,
- entscheidet der aktuelle Spieler, ob er eins, zwei oder drei Streichhölzer nimmt.
- wird die entsprechende Anzahl Streichhölzer vom Stapel genommen.
- Danach ist der andere Spieler an der Reihe.
- Wer zuletzt ein Streichholz nehmen musste, hat verloren.
Ablauf in der Konsole
Es sind 21 Hölzer vorhanden. Spieler 1: wieviele Hölzer nimmst du? (1-3) > 2 Es sind 19 Hölzer vorhanden. Spieler 2: wieviele Hölzer nimmst du? (1-3) > 1 Es sind 18 Hölzer vorhanden. ... Es sind 4 Hölzer vorhanden. Spieler 2: wieviele Hölzer nimmst du? (1-3) > 3 Es sind 1 Hölzer vorhanden Spieler 1: wieviele Hölzer nimmst du? (1-3) > 1 Spieler 1 hat verloren
Variablen bestimmen
Auftrag
Legen Sie alle benötigten Variablen für das Hölzchenspiel fest. Überlegen Sie auch, welchen Datentyp die einzelnen Variablen haben. Deklarieren und initialisieren Sie alle benötigten Variablen für das Hölzchenspiel.
Erwartetes Resultat
Programmablaufplan
Stellen Sie den Programmablauf gemäss Ausgangslage als Ablaufdiagramm graphisch dar. Achten Sie darauf, die einzelnen Schritte detailliert und in der richtigen Abfolge darzustellen.
Erwartetes Resultat
Realisierung
Codieren Sie das vollständige Programm anhand des Programmablaufs. Verwenden Sie dazu Ihren Ablaufplan (Kompetenz A) oder den Ablaufplan aus dem Lösungsvorschlag.
Der Aufbau des Programms muss exakt der Logik im Programmablaufplan bzw. Struktogramm entsprechen.
Vorgehen
- Erstellen Sie ein neues Projekt (Ordner) in Ihrem Java-Workspace.
- Erstellen Sie eine neue Klasse
Hoelzchen
bzw. eine neue DateiHoelzchen.java
. - Kopieren Sie das Java-Programmgerüst inkl. Scanner für die Eingaben in diese Klasse (Datei).
- Kopieren Sie die unten stehende Vorgabe über die Methode
private void run() { … }
. - Realisieren Sie das Programm schrittweise.
- Sie werden nicht alle Leerzeilen benötigen.
Vorgabe
private void run() { // ------ Declare variables ------ int holz; int anzahl; int spieler; // ------ Start of program------ ___________________ ___________________ while (______________________ ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ ______________________________________________ = scanner.nextInt(); ___________________________________________________________________ ___________________________________________________________________ ___________________________________________________________________ } _______________________________________________________________________ _______________________________________________________________________ }