Kleines Problem mit Nimmspiel

Status
Nicht offen für weitere Antworten.

gentleL

Aktives Mitglied
Hallo :)

sollten für die Schule ein NimmSpiel programmieren alles ok nur hab ich 2 kleine Probleme.

Wie mache ich das der nur 1, 2 oder 3 nehmen kann der spieler und warum gewinnt immer A hab ich da ein denkfehler beim programmieren ?


Quelltext -> http://nopaste.info/deeacf563e.html


Danke für die Hilfe

Lg gentleL
 
G

Gast

Gast
Tut mir Leid, ich begreife nicht, was das Programm machen soll.
Versuch mal, einen richtigen Programmablauf zu beschreiben und/oder den Code zu kommentieren.
Außerdem ist es auch nicht so nett, den Code nur zu linken, du kannst ihn auch direkt hier in Forum stellen.

Aufgefallen ist mir nur folgendes:
In der Methode readIntConsole arbeitest du in der globalen, statischen Variable anzstab. Die wird damit immer, wenn du ein int einließt, geändert. readIntConsole klingt mehr so, als würde da allgemein ein int von der Konsole gelesen, es wird aber in jedem Fall anzstab von der Konsole gelesen. Der Fehler ist das, glaub ich, nicht, aber es ist in jedem Fall unschön.
 
S

SlaterB

Gast
- du hast desöfteren
> BufferedReader br = new BufferedReader (new InputStreamReader(System.in));

EIN derartiger Reader reicht, kannst du statisch in einer Variablen ablegen

- wenn erg nach Zug von B 0 ist, dann wird zwar erst B als Sieger festgelegt (Zeile 59ff),
aber danach wird immer noch die Siegesbedingung für A geprüft (73ff), und diese ignoriert, dass i bereits 1 ist, also das Spiel vorbei

die vielen Variablen sind eh unnötig verwirrend,
hier eine kürzere Variante:

Code:
    public static void spieler()
    {
        char name = 0;
        int eingabe = 0;
        int erg = anzstab;

        while (name == 0)
        {
            try
            {

                System.out.print("Spieler A --> " + erg + " Staebchen vorhanden - Nehmen Sie ");
                eingabe = Integer.valueOf(br.readLine());
                erg -= eingabe;
                if (erg == 0)
                {
                    name = 'A';
                }
                else
                {
                    System.out.print("Spieler B --> " + erg + " Staebchen vorhanden - Nehmen Sie ");
                    eingabe = Integer.valueOf(br.readLine());
                    erg -= eingabe;
                    if (erg == 0)
                    {
                        name = 'B';
                    }
                }
            }
            catch (NumberFormatException e)
            {

                System.out.println("Ungueltige Eingabe");
                System.out.println("Bitte nur 1, 2 oder 3");
            }
            catch (IOException e)
            {

                System.out.println("Einlesefehler!");
            }
        }
        System.out.println("Spieler " + name + " hat gewonnnen");

    }

das Prüfen auf 1, 2, 3 geht mit einem if, bzw. du brauchst wohl eine while-Schleife, die solange einliest, bis das korrekte Ergebnis vorhanden ist,
außerdem noch prüfen, ob überhaupt genug Stäbchen vorhanden sind,
der Code wird also pro Spieler immer länger,

am besten schreibst du dir eine Methode
int eingabe = getInputFromPlayer("A",erg); // oder "B"

die sich um all das kümmert und am Ende die Eingabe zurückgibt,
dann muss in der while-Schleife nur noch auf Sieg doppelt getestet werden,
alles andere auch doppelt zu programmieren wäre unschön


- die Eingabe am Anfang wird bereits auf 10 Stäbchen geprüft, es kommt ne Fehlermeldung, aber das Spiel läuft danach normal weiter..,
da muss auch ne while-Schleife hin


--------

> Tut mir Leid, ich begreife nicht, was das Programm machen soll.

einfach mal ablaufen lassen?
 

gentleL

Aktives Mitglied
Danke Leute habs gestern noch hingekriegt ein wenig verwirrend aber dennoch geschafft :)

Ich guck mir mal deine Variante an und muss die erstmal kurz verstehen :)




edit:

Was bedeutet -= :) kenn das gar nicht :=)
 
S

SlaterB

Gast
also diese Zeile ist gewiss kein entscheidenes Qualitätsmerkmal ;)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
F Methoden Kleines Problem mit meinem Glücksrad... Java Basics - Anfänger-Themen 9
A Kleines Abbruch-Problem mit Do-While-Schleife Java Basics - Anfänger-Themen 4
D kleines problem bei system.out.println schreibweise Java Basics - Anfänger-Themen 6
C Kleines Problem mit System.out.print Java Basics - Anfänger-Themen 1
E Array zu Liste - kleines Problem Java Basics - Anfänger-Themen 6
J Vererbung Kleines Problem bei Vererbung! Java Basics - Anfänger-Themen 2
O Debug-Funktion mit Slick - Kleines Problem Java Basics - Anfänger-Themen 5
H Kleines Problem bei den Schleifen Java Basics - Anfänger-Themen 5
M Kleines Problem mit der Rekursion Java Basics - Anfänger-Themen 20
T kleines problem mit switch case Java Basics - Anfänger-Themen 11
V Schon wieder ein kleines problem...dieses mal mit do-while loop Java Basics - Anfänger-Themen 9
R Login mit Datenbankabfrage: Kleines Problem! Java Basics - Anfänger-Themen 6
K Kleines Anfänger Problem bei der Abfrage Java Basics - Anfänger-Themen 8
X Kleines JMenuBar Problem Java Basics - Anfänger-Themen 8
P RSA Verschlüsselung kleines Problem Java Basics - Anfänger-Themen 5
P wahrscheinlich ein kleines Problem Java Basics - Anfänger-Themen 7
H Kleines Problem mit der Polymorphie Java Basics - Anfänger-Themen 2
S "Kleines" Problem mit dem Timer Java Basics - Anfänger-Themen 4
K kleines Array-Problem Java Basics - Anfänger-Themen 6
C Kleines 2D Spiel. Problem. Java Basics - Anfänger-Themen 5
U Kleines Problem mit Konstruktor^^ Java Basics - Anfänger-Themen 7
D kleines Eclipse-Problem ! Java Basics - Anfänger-Themen 2
O Kleines Problem mit Konstruktor mit Parametern aus generischer Klasse...oder so ;) Java Basics - Anfänger-Themen 2
M Kleines Problem mit Threads (synchronized) Java Basics - Anfänger-Themen 3
S Kleines Problem... NaN, Infinity? Java Basics - Anfänger-Themen 9
B Drag and Drop fähige Trackliste..nurnoch ein kleines Problem Java Basics - Anfänger-Themen 16
G Kleines Problem mit File Java Basics - Anfänger-Themen 7
U kleines problem bei ner aufgabe :( Java Basics - Anfänger-Themen 8
G Kleines Problem mit Array Java Basics - Anfänger-Themen 14
R Unicode-Wert in Binär und Dezimal umformen - kleines Problem Java Basics - Anfänger-Themen 1
G Kleines Problem Java Basics - Anfänger-Themen 3
S Ich habe ein kleines Problem mit meinem Übungsprogramm Java Basics - Anfänger-Themen 7
S Hab ein kleines Problem :) Java Basics - Anfänger-Themen 4
D noch ein kleines Problem Java Basics - Anfänger-Themen 4
M kleines generics problem Java Basics - Anfänger-Themen 15
B Kleines? Jedenfalls Problem mit Borland-Together! Java Basics - Anfänger-Themen 4
D Kleines Problem mit JDBC Java Basics - Anfänger-Themen 2
D Hab ein kleines Problem mit setScreenSize Java Basics - Anfänger-Themen 2
B kleines Problem Java Basics - Anfänger-Themen 3
G Kleines Problem Java Basics - Anfänger-Themen 5
A Kleines bzw. großes Problem ! Java Basics - Anfänger-Themen 2
Y kleines Problem Java Basics - Anfänger-Themen 9
J Kleines Problem mit Checkbox Java Basics - Anfänger-Themen 5
N Kleines Problem mit meiner ersten Klasse Java Basics - Anfänger-Themen 5
0 Kleines Problem mit ArrayList Java Basics - Anfänger-Themen 25
N kleines Problem mit meiner Schleife Java Basics - Anfänger-Themen 8
megachucky Kleines Problem mit dem "return" einer Methode. Java Basics - Anfänger-Themen 11
T moin leute hab ein kleines aber pikantes problem Java Basics - Anfänger-Themen 10
L nur kleines null Pointer Exception problem Java Basics - Anfänger-Themen 9
G kleines problem beim einlesen Java Basics - Anfänger-Themen 3
C Erstes kleines Problem - string in chat ? Java Basics - Anfänger-Themen 9
megachucky kleines problem mit einer nullpointer exception Java Basics - Anfänger-Themen 2
N Kleines Problem! Java Basics - Anfänger-Themen 7
megachucky kleines problem mit nem STACK Java Basics - Anfänger-Themen 8
P Kleines Problem Java Basics - Anfänger-Themen 2
G Kleines Problem Java Basics - Anfänger-Themen 7
A Kleines GIT-Verständnisproblem zwischen zwei Rechnern Java Basics - Anfänger-Themen 6
S Kleines Java-Projekt; Kassenprogramm Java Basics - Anfänger-Themen 7
Kotelettklopfer Kleines Testprogramm mit Interface und einer Usereingabe Java Basics - Anfänger-Themen 16
E Kleines Java-Projekt für Anfänger Java Basics - Anfänger-Themen 10
Koookie Kleines Frage - Antwort Programm (Anfänger) Java Basics - Anfänger-Themen 5
K Erstes kleines Spieleprojekt - Java GUI in HTML einbinden Java Basics - Anfänger-Themen 3
R Kleines Java Spiel funktioniert nicht. Java Basics - Anfänger-Themen 2
J Kleines Rechenprogramm Java Basics - Anfänger-Themen 13
G Erste Schritte Suche Java Programmierer für kleines Projekt Java Basics - Anfänger-Themen 1
Z Erste Schritte Kleines 2D. Spiel Objekt Bewegung funktioniert nicht Java Basics - Anfänger-Themen 2
B Input/Output Kleines Netzwerkproblem Java Basics - Anfänger-Themen 2
J OOP Kleines Schülerverwaltungsprogramm Java Basics - Anfänger-Themen 9
N ein kleines GUI mit einem hauch XML Java Basics - Anfänger-Themen 5
K Kleines Spiel auf Java programmieren Java Basics - Anfänger-Themen 2
T erstes kleines Programm Java Basics - Anfänger-Themen 17
S Kleines Quiz Programm Java Basics - Anfänger-Themen 4
C Hilfe - Kleines Programm macht mir Schwierigkeiten Java Basics - Anfänger-Themen 2
K Ein kleines Rätsel Java Basics - Anfänger-Themen 2
E Erstes "kleines" Programm Java Basics - Anfänger-Themen 5
A Best Practice Ideen für kleines Anfängerschulprojekt gesucht Java Basics - Anfänger-Themen 4
J kleines Karteikartenprogramm Java Basics - Anfänger-Themen 3
S Kleines Zeichen berechnen Java Basics - Anfänger-Themen 5
fLooojava kleines Projekt - Verwendung von Youtube Java Basics - Anfänger-Themen 22
fLooojava Passwort generieren - kleines Programm Java Basics - Anfänger-Themen 15
H Kleines Prob Java Basics - Anfänger-Themen 5
J Flaechen vergleichen/kleines Fehler? Java Basics - Anfänger-Themen 23
K Kleines Projekt Java Basics - Anfänger-Themen 2
T Kleines Game mit Kollision Java Basics - Anfänger-Themen 2
J Mal wieder ein kleines Toleranzproblem Java Basics - Anfänger-Themen 20
H kleines Spiel [Processing] Java Basics - Anfänger-Themen 7
R Kleines Programm, benötige Hilfe! Java Basics - Anfänger-Themen 6
D Kleines Abfrageproblem Java Basics - Anfänger-Themen 3
K kleines Rekursionsproblem Java Basics - Anfänger-Themen 7
B Suche kleines Java-Applet Java Basics - Anfänger-Themen 6
P Kleines Problemm mit einer NullPointerException Java Basics - Anfänger-Themen 2
R kleines Kunstprogramm "mkbox" perfektionieren Java Basics - Anfänger-Themen 13
P Kleines Projekt -> Große Überlegungen Java Basics - Anfänger-Themen 2
U Bitte Helfen kleines Spiel Java Basics - Anfänger-Themen 9
K Kleines Spiel / Daten speichern Java Basics - Anfänger-Themen 8
T Kleines Spiel realisieren - wie? Java Basics - Anfänger-Themen 6
T Kleines Verständnissproblem mit Regex Java Basics - Anfänger-Themen 4
S Kleines Kartenspiel mit Java Java Basics - Anfänger-Themen 2
I Kleines Program, fehler? Java Basics - Anfänger-Themen 2
S kleines Würfelspiel Java Basics - Anfänger-Themen 10

Ähnliche Java Themen

Neue Themen


Oben