1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. Unsere jährliche Weihnachts-Banner-Aktion hat begonnen! Wir freuen uns auf viele, viele kreative Vorschläge.
    Mehr dazu könnt Ihr hier nachlesen: Weihnachtsbanner 2016

    Information ausblenden

Hilfe bei Java Nimmspiel

Dieses Thema im Forum "OS X-Developer" wurde erstellt von mucke, 12.11.09.

  1. mucke

    mucke Celler Dickstiel

    Dabei seit:
    28.06.08
    Beiträge:
    798
    Hallo
    irgendwie finde ich mein fehler nicht bei der Spielfeld ausgabe. Die Spielregeln stehn auch schon dabei. ahja und beim else vom spielzugComputer komme ich auch nicht weiter. Wenn sich das spielfeld durch 4 teilen lässt soll er 3 nehmen und sonst soll er so nehmen das er immer die 4 und 8 voll macht.Ich hoffe das mir jemand helfen kann.

    /* Testat */

    public class Testat2

    {
    public static void main (String[] args)
    {
    System.out.println("Erläuterung der Spielregeln:");
    System.out.println("Das Spiel wird mit zwei Spielern gespielt. Jeder der beiden Spieler setzt 1 Euro zu 10 mal 10 Cent. Diese werden in eine Reihe gelegt, wobei 11 mal 10 Cent einzeln und am Ende 1 mal 90 Cent (gestapelt) gelegt werden. Nun darf jeder abwechselnd 1, 2 oder 3 Positionen der Reihe vom Anfang beginnend entfernen. Dieses Geld gehört ihm. Es besteht Zugzwang. Wenn alle Positionen entfernt wurden, ist das Spiel zu Ende. Natürlich hat derjenige, der Position 12 erreicht, Gewinn gemacht, der andere den entsprechenden Verlust.");

    int spieler;
    {
    System.out.println(" Wer soll beginnen? (0: Computer 1: Ich)");
    spieler = Read.getInt();
    }
    if (spieler == 1)
    {
    System.out.println(" Spieler beginnt");
    }
    else if (spieler == 0)
    {
    System.out.println(" Computer beginnt");
    }

    spiel (spieler);
    // int gesGewinnPc=0;
    // int gesGewinnSp=0;
    //Endergebniss
    }
    static int spiel(int spieler)
    {

    int spielstand= 0;
    spielfeld(spielstand);
    int zug= 0;

    while (spielstand < 12)
    {
    if ( spieler == 1)
    {
    spielzugSpieler (spielstand, zug);
    spieler--;
    }

    else
    {
    spielzugComputer (spielstand,zug);
    spieler++;
    }

    spielfeld (spielstand);
    }

    return spielstand;

    }
    static void spielzugComputer(int spielstand, int zug)
    {
    if (spielstand % 4==0)
    {
    spielstand += 3;
    System.out.println(" Computer nimmt: " + spielstand);
    }
    else
    {
    spielstand += 2;
    System.out.println(" Computer nimmt: " + spielstand);
    }


    }
    static int spielzugSpieler (int spielstand, int zug)
    {

    System.out.println(" Wieviel Muenzen willst du nehmen? ");
    zug = Read.getInt();

    return spielstand;

    }

    static void spielfeld (int spielstand)
    {
    if (spielstand == 12)
    {
    System.out.println("xxxxxxxxxxX");
    }
    else
    {
    for (int i = 0; i < spielstand; i++)
    {
    System.out.print("x");
    }

    int rest = 11 - spielstand;
    for (int i = 0;i < rest; i++)
    {
    System.out.print("o");
    }
    System.out.print("O");
    }
    }
    }
     
  2. BigDan

    BigDan Granny Smith

    Dabei seit:
    04.07.07
    Beiträge:
    17
    Moin!

    Also so gaanz habe ich das Spiel noch nicht verstanden . . . und die Frage auch nicht, aber könnte das Problem vielleicht in der if liegen_
    Code:
    static void spielzugComputer(int spielstand, int zug)
        {
            if (spielstand % 4==0)
            {
                spielstand += 3;
                System.out.println(" Computer nimmt: " + spielstand);
            }
            else
            {
                spielstand += 2;
                System.out.println(" Computer nimmt: " + spielstand);
            }
            

    Ich kenn mich jetzt nicht genug mit der vorrangigkeit der Operatoren bei Java aus, aber koennte eine einfache Klammer um
    Code:
    spielstand % 4
    nicht das gewünschte Ergebnis bringen?

    Gruss

    Daniel
     

Diese Seite empfehlen