Erste Schritte Spiel: Glückliches Sieben

Lina15

Neues Mitglied
Hallo zusammen!

Könnt ihr mit bitte helfen, das Spiel "Glückliches Sieben" etwas schöner (fertig) zu programmieren?

Blatt1_Auf.4.png

Unten ist das, was ich geschafft habe. Weiter muss man daraus eine Schleife machen.. Das hatte ich auch gemacht, aber der Code sah im Endeffekt so verwirrend und unübersichtlich aus, dass ich jetzt nach besseren Lösungen suche.

Wäre froh für eure Lösungsvorschläge!

BEMERKUNG: Nur einfache Konstrukte sind zugelassen, wie if…else, while, int-Datentyp

Java:
public class LustigesSieben extends MiniJava 
{
    public static void main(String[] args) 
    {
        int dice1, dice2, sum_dice, gain, guess, stake;
        int bank_account = 100;
     
        //spieler gibt einen Tip eine seinen Betrag ein
        guess = read("Geben Sie Ihren Tip ein [2,12]:");
        if ((1 < guess) && (guess < 13))
        {
            stake = read("Geben Sie Ihren Betrag ein, aus [1,"+ bank_account + "]");
            if ((stake > 0) && (stake <= bank_account))
            {
                dice1 = dice();
                dice2 = dice();
                sum_dice = dice1 + dice2;
                
                //Prüfe, ob der Tip und die gewürfelte Zahl gleich sind, d.h. ob der
                // Spieler gewonnen oder verloren hat
                if (guess == sum_dice)
                {
                    if (guess == 7)
                        gain = 3*stake; //Falls 7 richtig geraten wurde, erhält der Spieler einen dreifachen Einsatz
                    else 
                        gain = 2*stake; //Falls einfach richtig geraten wurde, erhält der Spieler einen zweifachen Einsatz
                    bank_account = bank_account + gain - stake; //Berechne erneut den Kontostand
                    write("Bingo! Sie haben " + gain + " gewonnen. Die Zahl war " + sum_dice + ". Ihr Kontostand ist " + bank_account + ".");
                }  
                else
                    if ((sum_dice < 7 && guess < 7) || (sum_dice > 7 && guess > 7))
                    {
                        write("Sie behalten Ihr Geld. Die Zahl war " + sum_dice + ". Ihr Kontostand ist " + bank_account + ".");
                    }
                    else 
                    {
                        bank_account = bank_account - stake;
                        write("Leider haben Sie " + stake + " Euro verloren. Die Zahl war " + sum_dice + ". Ihr Kontostand ist " + bank_account + ".");
                    } 
            }
            else
                write ("Der Betrag darf maximal " + bank_account + " groß sein.");
        }
        else
            write ("Die Zahl muss zwieschen 2 und 12 liegen");
              
    }
}

Der Code für MiniJava.java ist gegeben:

Java:
package info1;
import javax.swing.JFrame;
import javax.swing.JOptionPane;

public class MiniJava {
    public static String readString(String text) {
        JFrame frame = new JFrame();
        String s = JOptionPane.showInputDialog(frame, text);
        frame.dispose();

        if (s == null)
            System.exit(0);
        return s;
    }

    public static String readString() {
        return readString("Eingabe:");
    }

    public static int readInt(String text) {
        JFrame frame = new JFrame();
        String s = JOptionPane.showInputDialog(frame, text);
        frame.dispose();

        int x = 0;
        if (s == null)
            System.exit(0);
        try {
            x = Integer.parseInt(s.trim());
        } catch (NumberFormatException e) {
            x = readInt(text);
        }
        return x;
    }

    public static int readInt() {
        return readInt("Geben Sie eine ganze Zahl ein:");
    }

    public static int read(String text) {
        return readInt(text);
    }

    public static int read() {
        return readInt();
    }

    public static double readDouble(String text) {
        JFrame frame = new JFrame();
        String s = JOptionPane.showInputDialog(frame, text);
        frame.dispose();

        double x = 0;
        if (s == null)
            System.exit(0);
        try {
            x = Double.parseDouble(s.trim());
        } catch (NumberFormatException e) {
            x = readDouble(text);
        }
        return x;
    }

    public static double readDouble() {
        return readDouble("Geben Sie eine Zahl ein:");
    }

    public static void write(String output) {
        JFrame frame = new JFrame();
        JOptionPane.showMessageDialog(frame, output, "Ausgabe", JOptionPane.PLAIN_MESSAGE);
        frame.dispose();
    }

    public static void write(int output) {
        write("" + output);
    }

    public static void write(double output) {
        write("" + output);
    }

    
    public static int generateNumber(int minval, int maxval){
        return minval + (new java.util.Random()).nextInt(maxval-minval+1);
    }
    public static int drawCard(){
        return generateNumber(2,11);
    }
    
    public static int dice(){
        return generateNumber(1,6);
    }

}
 
Zuletzt bearbeitet:

Andireas99

Mitglied
Wenn ich das bis jetzt richtig überschaut habe kannst du einfach ein "for"-Schleife in deiner LustigesSieben-Klasse erstellen, welche vor der ersten "if" Abfrage beginnt und nach dem letzten "else" aufhört. Vor dieser "for"-Schleife kannst du noch mit einem weiteren "reader" den Spieler fragen wie oft er spielen will und dann diesen Wert in der "for"-Schleife einbauen.

Freundliche Grüsse Andreas
 

kaoZ

Top Contributor
kannst du noch mit einem weiteren "reader" den Spieler fragen wie oft er spielen will

warum zwingend ein weiterer ?

und an den To , der Sinn der OOP ist es nicht alles als static zu deklarieren ;)

Ich geh eben Trainieren , frühstücke und schau mir das ganze dann mal in ruhe an :smoke:
 
Zuletzt bearbeitet:

kaoZ

Top Contributor
Der Code für MiniJava.java ist gegeben:

Ist der Code für die Klasse ernsthaft so angegeben ?

Java:
public class MiniJava {
    public static String readString(String text) {
        JFrame frame = new JFrame();
        String s = JOptionPane.showInputDialog(frame, text);
        frame.dispose();
 
        if (s == null)
            System.exit(0);
        return s;
    }
 
    public static String readString() {
        return readString("Eingabe:");
    }
 
    public static int readInt(String text) {
        JFrame frame = new JFrame();
        String s = JOptionPane.showInputDialog(frame, text);
        frame.dispose();
 
        int x = 0;
        if (s == null)
            System.exit(0);
        try {
            x = Integer.parseInt(s.trim());
        } catch (NumberFormatException e) {
            x = readInt(text);
        }
        return x;
    }
 
    public static int readInt() {
        return readInt("Geben Sie eine ganze Zahl ein:");
    }
 
    public static int read(String text) {
        return readInt(text);
    }
 
    public static int read() {
        return readInt();
    }
 
    public static double readDouble(String text) {
        JFrame frame = new JFrame();
        String s = JOptionPane.showInputDialog(frame, text);
        frame.dispose();
 
        double x = 0;
        if (s == null)
            System.exit(0);
        try {
            x = Double.parseDouble(s.trim());
        } catch (NumberFormatException e) {
            x = readDouble(text);
        }
        return x;
    }
 
    public static double readDouble() {
        return readDouble("Geben Sie eine Zahl ein:");
    }
 
    public static void write(String output) {
        JFrame frame = new JFrame();
        JOptionPane.showMessageDialog(frame, output, "Ausgabe", JOptionPane.PLAIN_MESSAGE);
        frame.dispose();
    }
 
    public static void write(int output) {
        write("" + output);
    }
 
    public static void write(double output) {
        write("" + output);
    }
 
 
    public static int generateNumber(int minval, int maxval){
        return minval + (new java.util.Random()).nextInt(maxval-minval+1);
    }
    public static int drawCard(){
        return generateNumber(2,11);
    }
 
    public static int dice(){
        return generateNumber(1,6);
    }
 
}

Falls ja , woher hast du die Aufgabe bzw. den Source Code ? , rein aus Interesse......
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
N Hey Leute und zwar versuche ich gerade ein 2D Spiel zu Programmieren aber die Figur will sich nicht nach links oder rechts bewegen :( Java Basics - Anfänger-Themen 12
I Threads Spiel gol Java Basics - Anfänger-Themen 6
N Java Spiel Figur auf dem Hintergrundbild bewegen. Java Basics - Anfänger-Themen 11
J ArrayList vergleichen im spiel Mastermind Java Basics - Anfänger-Themen 2
enesss tictactoe spiel Java Basics - Anfänger-Themen 5
K Java Lotto Spiel; ich komme nicht weiter Java Basics - Anfänger-Themen 15
Jxhnny.lpz TicTacToe Spiel vs Computer. (Probleme) Java Basics - Anfänger-Themen 7
httprt Probleme bei dem erstellen von leveln in meinem Spiel Java Basics - Anfänger-Themen 2
berserkerdq2 Habe ein Spiel entwickelt, dass immer in der 4 Runde einen cast-Fehler erhält Java Basics - Anfänger-Themen 3
berserkerdq2 Spiel hängt sich immer in der 4 Runde auf, obwohl ich jede Runde das gleiche mache Java Basics - Anfänger-Themen 1
Ekooekoo Hilfe spiel Java Basics - Anfänger-Themen 5
sserio Schwimmen als Spiel. Problem mit to String/ generate a card Java Basics - Anfänger-Themen 4
Kennewick Basketball Spiel Ergebnisse Java Basics - Anfänger-Themen 11
X Erste Schritte Hilfe bei einem kleinen Spiel. Java Basics - Anfänger-Themen 19
D Snake-Spiel ähnliche Aufgabe Hilfe Java Basics - Anfänger-Themen 3
R Hangman-Spiel-zufälliges Wort ermitteln Java Basics - Anfänger-Themen 4
JEP1 Java Dialog Fenster schließen Spiel Java Basics - Anfänger-Themen 0
I Simples Risiko-Spiel Java Basics - Anfänger-Themen 5
Hallolu Pong-Spiel: Schläger schneller werden lassen Java Basics - Anfänger-Themen 9
M Java Spiel wie Wer wird Millionär Java Basics - Anfänger-Themen 1
T Startbildschirm für ein Spiel erstellen Java Basics - Anfänger-Themen 0
Z Kein überprüfen des gesamten Arrays möglich.(Viergewinnt Spiel) Java Basics - Anfänger-Themen 6
G Ufo Spiel programmieren Java Basics - Anfänger-Themen 13
C Java Spiel Java Basics - Anfänger-Themen 3
J Spiel programmieren Java Basics - Anfänger-Themen 16
S Spiel-Programmieren. Wenn ein Objekt den anderen berührt. Java Basics - Anfänger-Themen 6
B Memory Spiel Java Basics - Anfänger-Themen 29
J Memory-Spiel Aktivierung der Methode mit Timer Java Basics - Anfänger-Themen 44
Kamy Ein einfaches "Vier Gewinnt" Spiel für Anfängerin Java Basics - Anfänger-Themen 51
A Breakout-Spiel , Ball mit Platten abprallen lassen Java Basics - Anfänger-Themen 1
S Spiel programmieren mit Java Java Basics - Anfänger-Themen 11
Olis Erste Schritte Simples Memory Spiel möglich? Java Basics - Anfänger-Themen 1
J Spiel mit Button klick starten Java Basics - Anfänger-Themen 9
C Rekursives Backtracking beim Spiel Peg Java Basics - Anfänger-Themen 22
M Spiel programmieren Java Basics - Anfänger-Themen 16
Spencer Reid Feedback zu kleinem Spiel Java Basics - Anfänger-Themen 4
kokojamboo92 Spiel programmieren Java Basics - Anfänger-Themen 1
R Kleines Java Spiel funktioniert nicht. Java Basics - Anfänger-Themen 2
I Spiel Java Basics - Anfänger-Themen 34
H ein einfaches Tic Tac Toe Spiel Java Basics - Anfänger-Themen 1
I Spiel programmieren. Java Basics - Anfänger-Themen 16
B Hilfe bei Escape - Spiel Java Basics - Anfänger-Themen 6
S Java-Spiel Java Basics - Anfänger-Themen 2
M Nim-Spiel geht in den negativen Bereich Java Basics - Anfänger-Themen 1
K Klassen Registrierungsseite für ein Spiel Java Basics - Anfänger-Themen 6
J Programmierung Quiz Spiel Java Basics - Anfänger-Themen 3
J Programmierung Quiz Spiel Java Basics - Anfänger-Themen 2
M Brauche Tipps für ein Spiel Java Basics - Anfänger-Themen 4
S Probleme mit GamGrid Spiel-Erstellung => Actor reagiert nicht auf Tastatur Java Basics - Anfänger-Themen 2
Mxxxt Mosaik Spiel - Steuerpanel wird nicht angezeigt Java Basics - Anfänger-Themen 5
M Erste Schritte Zufallszahl Spiel Problem Java Basics - Anfänger-Themen 7
Z Erste Schritte Kleines 2D. Spiel Objekt Bewegung funktioniert nicht Java Basics - Anfänger-Themen 2
H Spiel Kniffel: Gesamtes Array untersuchen. Java Basics - Anfänger-Themen 15
Tacofan Hangman als fertiges Spiel Java Basics - Anfänger-Themen 7
M Array und Objektorientierung? - TicTacToe Spiel Java Basics - Anfänger-Themen 43
C Klassen Sudoku-Spiel Werte werden nicht gesetzt Java Basics - Anfänger-Themen 4
K Kleines Spiel auf Java programmieren Java Basics - Anfänger-Themen 2
W Tic Tac Toe Spiel ohne Arrays Java Basics - Anfänger-Themen 7
S Im objektorientiertem "Spiel" kämpfen Java Basics - Anfänger-Themen 3
I Klassen Umsetzungsfrage zu Spiel "Zuul" Java Basics - Anfänger-Themen 3
F Mastermind Spiel Java Basics - Anfänger-Themen 9
H Liste ausgeben (Spiel Hey Fisch (software-challenge) ändern Anzahl Fische) Java Basics - Anfänger-Themen 1
F Game-Engine für textbasierendes Spiel: Architektur? Java Basics - Anfänger-Themen 9
K Erste Schritte Frage Antwort Spiel - Fragen zur Planung Java Basics - Anfänger-Themen 2
J Java Spiel Zufallsauswahl für Zugbeginn Java Basics - Anfänger-Themen 3
J Frage Antwort Spiel - Wie Zeitcountdown realisieren? Java Basics - Anfänger-Themen 2
T Hangman spiel Java Basics - Anfänger-Themen 5
J 2 Pc's - Spiel gegeneinander ?! Java Basics - Anfänger-Themen 3
V Spiel Programmieren Java Basics - Anfänger-Themen 9
P 2D-Spiel und Bildschirmgröße Java Basics - Anfänger-Themen 2
O Methoden Fehlermeldung(Illegal start of expression) bei 4-Gewinnt-Spiel Java Basics - Anfänger-Themen 5
T Blöcke für ein Jump and Run Spiel Java Basics - Anfänger-Themen 8
S 2D-Spiel mit Threads... Java Basics - Anfänger-Themen 3
S 2D-Spiel im Vollbild an größe anpassen? Java Basics - Anfänger-Themen 3
M hangman spiel Java Basics - Anfänger-Themen 1
K JTextField in ein Spiel einfügen Java Basics - Anfänger-Themen 2
S Mosaik Spiel Java Basics - Anfänger-Themen 19
pinar memory spiel Java Basics - Anfänger-Themen 10
T OOP Mein erstes Java-Spiel - Schiffe versenken! Java Basics - Anfänger-Themen 2
K Erste Schritte Wie mache ich weiter? (Spiel-Menü) Java Basics - Anfänger-Themen 9
C Java Applet in html. Pong - old school Spiel Java Basics - Anfänger-Themen 10
J Variablen Invalid Character - Error -> Spiel mit Variablenergebnissen Java Basics - Anfänger-Themen 8
K Schere Stein Papier Spiel Java Basics - Anfänger-Themen 3
A Feedback zum Spiel Java Basics - Anfänger-Themen 5
F Hilfe bei meinem Spiel Java Basics - Anfänger-Themen 3
C Lotto Spiel Java Basics - Anfänger-Themen 23
Jagson Dotcom Spiel - Dots Random setzen Java Basics - Anfänger-Themen 8
Dogge Farben-Spiel Java Basics - Anfänger-Themen 20
K Diverse Bugs in einem Snake Spiel Java Basics - Anfänger-Themen 4
2 Lotto-Spiel Java Basics - Anfänger-Themen 9
X Datentypen Probleme mit Char bei meinem 1. Spiel Java Basics - Anfänger-Themen 20
D Erste Schritte Einstieg in die Java Spiel Programmierung Java Basics - Anfänger-Themen 7
H kleines Spiel [Processing] Java Basics - Anfänger-Themen 7
P NullPointerException in Memory-Spiel Java Basics - Anfänger-Themen 5
R Server/Client für Spiel Java Basics - Anfänger-Themen 2
K Hilfe, komme nicht weiter in meinem JAVA-Spiel Java Basics - Anfänger-Themen 3
J Programm(Spiel) neustarten Java Basics - Anfänger-Themen 8
M Suche Beispiel-Spiel Java Basics - Anfänger-Themen 3
C Java Nullpointer Exception in 2D-Spiel Snake Java Basics - Anfänger-Themen 8
M Apfel-Spiel KeyListener Java Basics - Anfänger-Themen 33

Ähnliche Java Themen

Neue Themen


Oben