src/Roulette.java hinzugefügt
Erste Version eines Lösungsvorschlags für das Roulette-Spiels aus der Übung.main
parent
10c35edda6
commit
34d18208af
|
@ -0,0 +1,149 @@
|
||||||
|
import java.util.Scanner;
|
||||||
|
|
||||||
|
public class Roulette {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
Scanner kb = new Scanner(System.in);
|
||||||
|
|
||||||
|
int geld = 100;
|
||||||
|
int rundenzähler = 1;
|
||||||
|
|
||||||
|
int einsatzZahl, einsatzGerade, einsatzHälfte, einsatzDrittel, einsatzSpalte, einsatzFarbe;
|
||||||
|
int wetteZahl = 0, wetteDrittel = 0, wetteHälfte = 0, wetteSpalte = 0;
|
||||||
|
boolean wetteGerade = false;
|
||||||
|
String wetteFarbe = "";
|
||||||
|
|
||||||
|
System.out.println("Willkommen im Mannheimer Spielcasino!\n");
|
||||||
|
System.out.printf("Sie haben ein Spielkapital von %d Euro zur Verfügung.%n", geld);
|
||||||
|
|
||||||
|
do {
|
||||||
|
System.out.printf("Faites votre jeux. Bitte machen Sie Ihre Einsätze für die %d. Runde. Sie haben %d Euro zur Verfügung.%n", rundenzähler, geld);
|
||||||
|
|
||||||
|
// Einsätze
|
||||||
|
System.out.print("Wie viel Geld möchten Sie auf eine Zahl zwischen 0 und 36 setzen? ");
|
||||||
|
einsatzZahl = Integer.parseInt(kb.nextLine());
|
||||||
|
if (einsatzZahl > 0) {
|
||||||
|
System.out.print("Auf welche Zahl möchten Sie setzen? ");
|
||||||
|
wetteZahl = Integer.parseInt(kb.nextLine());
|
||||||
|
geld -= einsatzZahl;
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.printf("%nSie haben noch %d Euro, wie viel davon möchten Sie auf gerade oder ungerade setzen? ", geld);
|
||||||
|
einsatzGerade = Integer.parseInt(kb.nextLine());
|
||||||
|
if (einsatzGerade > 0) {
|
||||||
|
System.out.print("Worauf möchten Sie setzen? Eine gerade oder ungerade Zahl? (g/u) ");
|
||||||
|
wetteGerade = kb.nextLine().equals("g");
|
||||||
|
geld -= einsatzGerade;
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.printf("%nSie haben noch %d Euro, wie viel davon möchten Sie auf eine Zahlenhälfte setzen? ", geld);
|
||||||
|
einsatzHälfte = Integer.parseInt(kb.nextLine());
|
||||||
|
if (einsatzHälfte > 0) {
|
||||||
|
System.out.print("Worauf möchten Sie setzen? Auf die 1. (1-18) oder 2. (19-36) Hälfte der Zahlen? (1 o. 2) ");
|
||||||
|
wetteHälfte = Integer.parseInt(kb.nextLine());
|
||||||
|
geld -= einsatzHälfte;
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.printf("%nSie haben noch %d Euro, wie viel davon möchten Sie auf ein Zahlendrittel setzen? ", geld);
|
||||||
|
einsatzDrittel = Integer.parseInt(kb.nextLine());
|
||||||
|
if (einsatzDrittel > 0) {
|
||||||
|
System.out.print("Worauf möchten Sie setzen? Auf das 1. (1-12), 2. (13-24) oder 3. (25-36) Drittel der Zahlen? (1, 2 o. 3) ");
|
||||||
|
wetteDrittel = Integer.parseInt(kb.nextLine());
|
||||||
|
geld -= einsatzDrittel;
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.printf("%nSie haben noch %d Euro, wie viel davon möchten Sie auf eine Spalte setzen? ", geld);
|
||||||
|
einsatzSpalte = Integer.parseInt(kb.nextLine());
|
||||||
|
if (einsatzSpalte > 0) {
|
||||||
|
System.out.print("Worauf möchten Sie setzen? Auf die 1., 2. o. 3. Kolonne? (1, 2 o. 3) ");
|
||||||
|
wetteSpalte = Integer.parseInt(kb.nextLine());
|
||||||
|
geld -= einsatzSpalte;
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.printf("%nSie haben noch %d Euro, wie viel davon möchten Sie auf schwarz oder rot setzen? ", geld);
|
||||||
|
einsatzFarbe = Integer.parseInt(kb.nextLine());
|
||||||
|
if (einsatzFarbe > 0) {
|
||||||
|
System.out.print("Worauf möchten Sie setzen? Eine schwarze oder rote Zahl? (s/r) ");
|
||||||
|
String eingabe = kb.nextLine();
|
||||||
|
if (eingabe.equals("r"))
|
||||||
|
wetteFarbe = "rot";
|
||||||
|
else
|
||||||
|
wetteFarbe = "schwarz";
|
||||||
|
|
||||||
|
geld -= einsatzFarbe;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Ermitteln der Zahl
|
||||||
|
System.out.println();
|
||||||
|
System.out.println("Rien ne va plus...");
|
||||||
|
|
||||||
|
int zahl = (int)(Math.random() * 37);
|
||||||
|
|
||||||
|
String farbe = "schwarz";
|
||||||
|
if (zahl == 0)
|
||||||
|
farbe = "grün";
|
||||||
|
else if (zahl % 2 == 1 && (zahl >= 1 && zahl <= 10 || zahl >= 19 && zahl <= 28)
|
||||||
|
|| zahl % 2 == 0 && (zahl >= 11 && zahl <= 18 || zahl >= 29 && zahl <= 36) )
|
||||||
|
farbe = "rot";
|
||||||
|
|
||||||
|
System.out.printf("%n%d, %s.%n%n", zahl, farbe);
|
||||||
|
|
||||||
|
// Gewinnermittlung
|
||||||
|
if (einsatzZahl > 0 && zahl == wetteZahl) {
|
||||||
|
int gewinn = einsatzZahl * 35;
|
||||||
|
System.out.printf("Gratulation, Sie haben %d Euro für die richte Zahl gewonnen.%n", gewinn);
|
||||||
|
geld += gewinn + einsatzZahl;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (einsatzGerade > 0 && zahl % 2 == 0 && wetteGerade) {
|
||||||
|
int gewinn = einsatzGerade;
|
||||||
|
System.out.printf("Gratulation, Sie haben %d Euro für eine %sgerade Zahl gewonnen.%n", gewinn, (zahl % 2 == 0 && wetteGerade)? "" : "un");
|
||||||
|
geld += gewinn + einsatzGerade;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (einsatzHälfte > 0 && (zahl - 1) / 18 + 1 == wetteHälfte) {
|
||||||
|
int gewinn = einsatzHälfte;
|
||||||
|
System.out.printf("Gratulation, Sie haben %d Euro für die richtige Hälfte gewonnen.%n", gewinn);
|
||||||
|
geld += gewinn + einsatzHälfte;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (einsatzDrittel > 0 && (zahl - 1) / 12 + 1 == wetteDrittel) {
|
||||||
|
int gewinn = einsatzDrittel * 2;
|
||||||
|
System.out.printf("Gratulation, Sie haben %d Euro für das richtige Drittel gewonnen.%n", gewinn);
|
||||||
|
geld += gewinn + einsatzDrittel;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (einsatzSpalte > 0 && zahl % 12 + 1 == wetteSpalte) {
|
||||||
|
int gewinn = einsatzSpalte * 2;
|
||||||
|
System.out.printf("Gratulation, Sie haben %d Euro für die richtige Kolonne gewonnen.%n", gewinn);
|
||||||
|
geld += gewinn + einsatzSpalte;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (einsatzFarbe > 0 && wetteFarbe.equals(farbe)) {
|
||||||
|
int gewinn = einsatzFarbe;
|
||||||
|
System.out.printf("Gratulation, Sie haben %d Euro für die richtige Farbe gewonnen.%n", gewinn);
|
||||||
|
geld += gewinn + einsatzFarbe;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Rundenende
|
||||||
|
if (geld <= 0) {
|
||||||
|
System.out.println("Leider sind Sie pleite und müssen unser Casino nun verlassen.");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.printf("%nSie haben nun %d Euro zur Verfügung. Möchten Sie weiterspielen? (j/n) ", geld);
|
||||||
|
String weiter = kb.nextLine();
|
||||||
|
if (!weiter.equals("j") && !weiter.equals("ja"))
|
||||||
|
break;
|
||||||
|
|
||||||
|
rundenzähler += 1;
|
||||||
|
|
||||||
|
} while(true);
|
||||||
|
|
||||||
|
System.out.println("Danke für Ihren Besuch und auf Wiedersehen!");
|
||||||
|
|
||||||
|
kb.close();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue