# TicTacToe Hausaufgabe



## syntaxError404 (18. Dez 2020)

Ich bräuchte Hilfe bei einer Hausaufgabe bitte ^^ 
(nur Java.lang)


----------



## LimDul (18. Dez 2020)

Das ist schön. Wo brauchst du denn Hilfe? Was hast du bereits gemacht, wo hakt es? Wie sieht dein Code bisher aus? Was hast du dir für Gedanken gemacht?


----------



## mrBrown (18. Dez 2020)

https://www.java-forum.org/thema/kommandozeilenargument.190329


----------



## syntaxError404 (18. Dez 2020)

```
public class TicTacToe2 {



    public static void main(String[] args) {



        char[][] field = {
                {' ', '|', ' ', '|', ' '},
                {'-', '|', '-', '|', '-'},
                {' ', '|', ' ', '|', ' '},
                {'-', '|', '-', '|', '-'},
                {' ', '|', ' ', '|', ' '}
        };

        int position;
        int turns = 0;


        placeSign(field, position, "p1");
        printField(field);

    }

    public static void printField(char[][] field) {

        for (char[] row : field) {
            for (char c : row) {
                System.out.print(c);
            }
            System.out.println();
        }
    }


    public static void placeSign(char[][] field, int position, String player) {

        char sign = ' ';


        
        if (player.equals("p1")) {
            sign = 'X';
            p1Position.add(position);
        } else if (player.equals("p2")) {
            sign = 'O';
            p2Position.add(position);
        }


        switch (position){
            case 0:
                field[0][0] = sign;
                break;
            case 1:
                field[0][2] = sign;
                break;
            case 2:
                field[0][4] = sign;
                break;
            case 3:
                field[2][0] = sign;
                break;
            case 4:
                field[2][2] = sign;
                break;
            case 5:
                field[2][4] = sign;
                break;
            case 6:
                field[4][0] = sign;
                break;
            case 7:
                field[4][2] = sign;
                break;
            case 8:
                field[4][4] = sign;
                break;
            default:
                break;
        }

    }

}
```


----------



## syntaxError404 (18. Dez 2020)

das ist alles was ich bisher habe. Ich weiß jetzt nicht weiter :/ Man soll ja alle 9 Züge auf einmal eingeben und anschließend den Gewinner + den gewinnenden Zug ausspucken (Auf der TerminalKlasse).


----------



## mihe7 (18. Dez 2020)

Die main-Methode hat einen Parameter args. Das ist ein Array, über das Du Zugriff auf die Kommandozeilenparameter hast. Dein Programm wird mit neun Argumenten aufgerufen und jedes Argument enthält die Nummer einer Zelle, die die Spieler abwechselnd belegt haben. Deine Aufgabe ist es, den Gewinner zu ermitteln.


----------



## syntaxError404 (19. Dez 2020)

mihe7 hat gesagt.:


> Die main-Methode hat einen Parameter args. Das ist ein Array, über das Du Zugriff auf die Kommandozeilenparameter hast. Dein Programm wird mit neun Argumenten aufgerufen und jedes Argument enthält die Nummer einer Zelle, die die Spieler abwechselnd belegt haben. Deine Aufgabe ist es, den Gewinner zu ermitteln.


Das ist schon einmal hilfreich, danke sehr!  Jetzt steh ich aber auf den Schlauch wie ich den Gewinner ermitteln soll... Klar ist, wenn 3 Felder dasselbe Zeichen haben, hat einer gewonnen


----------



## mihe7 (19. Dez 2020)

syntaxError404 hat gesagt.:


> Klar ist, wenn 3 Felder dasselbe Zeichen haben, hat einer gewonnen


Nö.


----------

