Labor – Schere - Stein - Papier
Links zu Theorie-Seiten:
-
Packages, Konstante, Zufallszahlen und Einlesen von Tastatur (behandelt zu Beginn Packages, nach den Konstanten die Klasse Random, danach Klasse Scanner)
Gegeben ist folgende Klasse:
Es gibt die 3 Gegenstände Schere, Stein, Papier. Die Regeln dürften bekannt sein – anderenfalls recherchieren!
Die nötige Eingabemethode ist:
public String eingabe() {
Scanner sc = new Scanner(System.in);
String txt = null;
// Beginn do-while
System.out.print("Eingabe (Groß/klein egal) 'Schere', 'Stein', 'Papier', 'STOP': ");
txt = sc.next().toLowerCase();
// wenn keiner der obigen Worte: Fehlermeldung, txt = null, Wiederholung
// wenn ok, Rückgabe von txt
// Ende do-while
return txt;
}
Es werden die Anzahlen der jeweiligen Siege (Spieler, Computer) mitgezählt.
Ein Spiel erfolgt durch Aufruf der Methode spiel()
.
Wenn Spiel beendet wird, gibt diese den Namen des Siegers (mehr Siege) und die Anzahl seiner Siege aus, danach die Anzahl der Fehl-Eingaben.
Die Anzahlen und die Sammlung der Fehleingaben werden sinnvollerweise als Instanzvariablen (int, String) verwaltet.
Beispiel:
Sieger: Evi (12 Siege) Verlierer: Computer (9 Siege) Fehleingaben: 3 ('wtein', 'pspier', 'xx')
In einer Schleife gibt Spieler1 (Du) den Gegenstand ein den er sich ausgedacht hat. Danach wird über Zufall der Gegenstand für Spieler 2 ausgewählt und der Sieger ermittelt. Beendet wird das Spiel sobald "stop" eingegeben wird.
Anmerkungen:
-
Punkteabzug auch bei einer schlechten Formatierung – halte dich an den im Unterricht besprochenen Stil.
-
Testen Sie alle Methoden aus!
-
Zufallszahlen liefert uns z.B. die Klasse
java.util.Random
und die Methode nextInt(…) -
Es ist die equals-Methode zum String-Vergleich zu verwenden.
-
Eingegebene Strings sind auf LowerCase umzuwandeln