Import klappt nicht

Darkherobrine9

Mitglied
Hallo, ich wollte ein 4 gewinnt spiel in java coden (mit replit.com) aber egal was ich mache es kommen nur error
Datei main:

Java:
import java.util.Scanner;
import FourInARow;


public class Main {
    public static void main(String[] args) {
        // ...
        FourInARow game = new FourInARow();
        game.run();
        // ...
    }

Datei FourInARow:

Java:
import java.util.Scanner;
public class FourInARow {
    public void run() {
        Scanner scanner = new Scanner(System.in);
        char[][] board = new char[6][7]; // Spielbrett
        char currentPlayer = 'X'; // Der aktuelle Spieler, der am Zug ist
        boolean running = true; // Gibt an, ob das Spiel läuft
        int row; // Die Zeile, in die der Spielstein fallen soll
        int column; // Die Spalte, in die der Spielstein fallen soll

        // Initialisiere das Spielbrett
        for (int i = 0; i < board.length; i++) {
            for (int j = 0; j < board[i].length; j++) {
                board[i][j] = ' ';
            }
        }

        while (running) {
            // Zeichne das Spielbrett
            drawBoard(board);

            // Frage den Spieler nach seinem Zug
            System.out.println("Spieler " + currentPlayer + ", wähle eine Spalte (1-7):");
            column = scanner.nextInt() - 1;

            // Versuche, den Spielstein in die angegebene Spalte zu platzieren
            row = placePiece(board, currentPlayer, column);

            // Prüfe, ob der Spieler gewonnen hat
            if (checkWin(board, currentPlayer, row, column)) {
                drawBoard(board); // Zeichne das Spielbrett
                System.out.println("Spieler " + currentPlayer + " hat gewonnen!");
                running = false;
            }

            // Wechsle zum nächsten Spieler
            if (currentPlayer == 'X') {
                currentPlayer = 'O';
            } else {
                currentPlayer = 'X';
            }
        }
    }

    // Zeichnet das Spielbrett
    public void drawBoard(char[][] board) {
        for (int i = 0; i < board.length; i++) {
            for (int j = 0; j < board[i].length; j++) {
                System.out.print("|" + board[i][j]);
            }
            System.out.println("|");
        }
    }

    // Versucht, den Spielstein in die angegebene Spalte zu platzieren
    public int placePiece(char[][] board, char player, int column) {
        // Prüfe, ob die Spalte voll ist
        if (board[0][column] != ' ') {
            System.out.println("Die Spalte ist voll. Wähle eine andere.");
            return -1;
        }

        // Suche die nächste freie Zeile in der Spalte und platziere den Spielstein dort
        for (int i = board.length - 1; i >= 0; i--) {
            if (board[i][column] == ' ') {
                board[i][column] = player;
                return i;
            }
        }

        return -1;
    }

    // Prüft, ob der angegebene Spieler gewonnen hat
    public boolean checkWin(char[][] board, char player, int row, int column) {
        // Prüfe, ob es vier Spielsteine in einer Reihe gibt
        if (checkRowWin(board, player, row) || checkColumnWin(board, player, column) || checkDiagonalWin(board, player, row, column)) {
            return true;
        }

        return false;
    }
    // Prüft, ob es vier Spielsteine in einer Reihe gibt
    public boolean checkRowWin(char[][] board, char player, int row) {
        int consecutive = 0;
        for (int i = 0; i < board[row].length; i++) {
            if (board[row][i] == player) {
                consecutive++;
            } else {
                consecutive = 0;
            }
            if (consecutive == 4) {
                return true;
            }
        }
        return false;
    }

    // Prüft, ob es vier Spielsteine in einer Spalte gibt
    public boolean checkColumnWin(char[][] board, char player, int column) {
        int consecutive = 0;
        for (int i = 0; i < board.length; i++) {
            if (board[i][column] == player) {
                consecutive++;
            } else {
                consecutive = 0;
            }
            if (consecutive == 4) {
                return true;
            }
        }
        return false;
    }

    // Prüft, ob es vier Spielsteine auf einer Diagonalen gibt
    public boolean checkDiagonalWin(char[][] board, char player, int row, int column) {
        int consecutive = 0;

        // Prüfe obere Diagonale
        for (int i = row, j = column; i >= 0 && j < board[i].length; i--, j++) {
            if (board[i][j] == player) {
                consecutive++;
            } else {
                consecutive = 0;
            }
            if (consecutive == 4) {
                return true;
            }
        }

        // Prüfe untere Diagonale
        consecutive = 0;
        for (int i = row, j = column; i < board.length && j < board[i].length; i++, j++) {
            if (board[i][j] == player) {
                consecutive++;
            } else {
                consecutive = 0;
            }
            if (consecutive == 4) {
                return true;
            }
        }

        return false;
    }
}
 
Y

yfons123

Gast
welcher fehler kommt?
in der main datei fehlt die schließende klammer der klasse
 

Darkherobrine9

Mitglied
es kommt der fehler:
sh -c javac -classpath .:target/dependency/* -d . $(find . -type f -name '*.java')
./Main.java:2: error: '.' expected
import FourInARow;
^
./Main.java:11: error: reached end of file while parsing
}
^
2 errors
exit status 1

beim start
 

KonradN

Super-Moderator
Mitarbeiter
Der import ist so auch unsinnig. Die beiden Klassen sind im gleichen Package und daher ist kein Import notwendig.
 

KonradN

Super-Moderator
Mitarbeiter
Und die Logik zur Prüfung der Diagonalen solltest Du noch einmal prüfen. Das sieht so nicht korrekt aus. Du prüfst ja derzeit nur die Diagonale startend von dem zulestz eingefügten Element und du prüfst nur nach rechts und links unten.

Aber das kann natürlich auch etwas sein, das miotten drin oder unten hintzugefügt wurde. Also als Beispiel:

Code:
      o
      #
  o # #
o # # #
1 2 3 4



      o
    o #
  o # #
  # # #
1 2 3 4

In den Beispielen sind # beliebige Steine und o relevante Steine eines Spielers.
Im ersten Beispiel kann ja der Spiele o an Stelle 3 sein Stein einwerfen und hat damit eine Diagonale von 4 Steinen
Im zweiten Beispiel kann er auf 1 einwerfen und bekommt die Diagonale zum Sieg.

Du müsstest Dir also überlegen, was Du genau prüfen musst. (Tipp: Es muss nur der Startpunkt verändert werden der Schleifen - dann würde es klappen - so ich das jetzt richtig gesehen habe ... war halt nur ein kurzer Blick auf den Code.)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
D import java.utils.Scaner klappt nicht Java Basics - Anfänger-Themen 17
H import java.io.* klappt nich Java Basics - Anfänger-Themen 12
S nach Import von jars (PLC4x) in Eclipse kann nicht mehr compiliert werden Java Basics - Anfänger-Themen 9
S Daten aus Import Datei auslesen und sortieren Java Basics - Anfänger-Themen 2
F Import SSL Zertifikat in keystore Java Basics - Anfänger-Themen 10
M import com.sun.star.uno Java Basics - Anfänger-Themen 25
T Probleme beim Import eines Git-Repos Java Basics - Anfänger-Themen 2
java-starter Erste Schritte import von package Java Basics - Anfänger-Themen 4
J The import org.bukkit cannot be resolved Java Basics - Anfänger-Themen 3
E Paketstruktur und import Klauseln Java Basics - Anfänger-Themen 14
D import Befehle Java Basics - Anfänger-Themen 3
E Unterschied zwischen new und import Java Basics - Anfänger-Themen 5
O Package import-Klausel Java Basics - Anfänger-Themen 10
O extrends vs. import Java Basics - Anfänger-Themen 14
B Import Tabelle - Struktur durch User einstellbar Java Basics - Anfänger-Themen 4
W JavaFX import Fehler/Zellularautomaten Java Basics - Anfänger-Themen 1
T Erste Schritte JAR import Fehler Java Basics - Anfänger-Themen 2
Textsurfer Erste Schritte CSV Import Reader Writer Java Basics - Anfänger-Themen 0
S BufferedReader TextFields Import Java Basics - Anfänger-Themen 5
M Best Practice Daten-Import /Trabsfomration aus Textdatei Java Basics - Anfänger-Themen 12
G import utils.SourceHandler; Java Basics - Anfänger-Themen 5
L Klasse/Variable import Java Basics - Anfänger-Themen 7
W Erste Schritte import java.util.scanner funktioniert nicht Java Basics - Anfänger-Themen 2
slejden Erste Schritte der Befehl import Java Basics - Anfänger-Themen 2
D Bitte um Hilfe bei "error: package com.apple.eawt does not exist import com.apple.eawt.*;" Java Basics - Anfänger-Themen 1
B Erste Schritte Way of life ohne import - Habe Beispiel, macht Unfug Java Basics - Anfänger-Themen 21
J BlueJ und import-Anweisungen, wie geht das? Java Basics - Anfänger-Themen 4
I DATEV import / export Java Basics - Anfänger-Themen 2
O Probleme beim import von Projekten in Eclipse Java Basics - Anfänger-Themen 7
C Java Applet Fragen: Serialisierung, Excel import Java Basics - Anfänger-Themen 2
F Import von Zip-Datei in Eclipse Java Basics - Anfänger-Themen 1
? Klassen Verständnisprobleme mit Import Anweisungen Java Basics - Anfänger-Themen 6
FINF_AW_Alex import funktioniert nicht Java Basics - Anfänger-Themen 4
A Import anderer Classen aus anderen Projekten Java Basics - Anfänger-Themen 6
B Doppelte Werte aus Array entfernen ohne Import - Algorithmus Java Basics - Anfänger-Themen 5
M import von eigener Klasse Java Basics - Anfänger-Themen 12
S import java.*; vs import java.awt.TextArea Java Basics - Anfänger-Themen 7
B ThreadPoolExecutor - import java.util.concurrent Java Basics - Anfänger-Themen 2
F import Prog1Tools.IOTools Java Basics - Anfänger-Themen 9
J Aus "import" die genutzte Library erfahren Java Basics - Anfänger-Themen 4
T Erste Schritte import java.lang.System.out Java Basics - Anfänger-Themen 4
E Erste Schritte Import von Klassen Java Basics - Anfänger-Themen 8
B Compiler-Fehler import java.io.*; führt zu error Java Basics - Anfänger-Themen 2
N Probleme mit dem Import Java Basics - Anfänger-Themen 8
J ORACLE Spatial ungültiger Spaltenindex beim Import Java Basics - Anfänger-Themen 2
V Klassen import - einfaches Umleiten auf eigene Klassen? Java Basics - Anfänger-Themen 8
D Geschwindigkeits unterschied bei import? Java Basics - Anfänger-Themen 13
C import Java Basics - Anfänger-Themen 7
O Compiler-Fehler import funktioniert nicht Java Basics - Anfänger-Themen 2
D Import von import org.apache.commons.math3...... Java Basics - Anfänger-Themen 2
J Import in Java Java Basics - Anfänger-Themen 4
A Import Anwendungen Java Basics - Anfänger-Themen 2
D Frage zu der import Anweisung in Java Java Basics - Anfänger-Themen 15
S Erste Schritte import für andere Klassenfiles verfügbar machen? (Java unter Eclipse) Java Basics - Anfänger-Themen 8
F Problem mit import Java Basics - Anfänger-Themen 8
C Umgebungsvariable import anweisung gibt fehlermeldung Java Basics - Anfänger-Themen 2
algebraiker Textdatei-Import Java Basics - Anfänger-Themen 8
T .Java Import Java Basics - Anfänger-Themen 19
N Erste Schritte import javax.media.3d....; //Fehlermeldung: cannot be resolved Java Basics - Anfänger-Themen 10
N Import Problem, Applet will nicht Java Basics - Anfänger-Themen 6
Q Classpath Package import Java Basics - Anfänger-Themen 6
J Erste Schritte import awt.* ;awt.event.*; Java Basics - Anfänger-Themen 3
B Wie funktioniert der Import von Dritt-packages in Eclipse? Java Basics - Anfänger-Themen 5
C Fehlermeldung "The import TestProjekt cannot be resolved". Warum? Java Basics - Anfänger-Themen 7
W Problem beim CSV-Import Java Basics - Anfänger-Themen 5
K Collections Problem beim import von Packages Java Basics - Anfänger-Themen 10
F Import mit .* oder nicht? Java Basics - Anfänger-Themen 3
D Frage zu Exceptions und der import Anweisung Java Basics - Anfänger-Themen 12
F Problem mit "import" Java Basics - Anfänger-Themen 9
M Import Unicode Textfile Java Basics - Anfänger-Themen 10
S import - Anweisung; Setzen der Classpath Java Basics - Anfänger-Themen 2
W Wann nutze ich "import"? Java Basics - Anfänger-Themen 12
K OOP Java import zwei gleichnamiger Klassen Java Basics - Anfänger-Themen 5
M JS Import aus externer Jar Datei Java Basics - Anfänger-Themen 5
D OpenCSV Fehllender Konstruktor trotz import und Buildpath Eintrag Java Basics - Anfänger-Themen 1
M import einer Grafik aus .jar funktioniert nicht Java Basics - Anfänger-Themen 6
1 JMF Import Problem Java Basics - Anfänger-Themen 3
D import-fehlermeldung Java Basics - Anfänger-Themen 3
M java erkennt import-klassen nicht?! Java Basics - Anfänger-Themen 39
K OOP import Java Basics - Anfänger-Themen 13
B import Anweisung Java Basics - Anfänger-Themen 2
D OOP Pakete Import Java Basics - Anfänger-Themen 15
T Netbeans: Import von Externen Packet Java Basics - Anfänger-Themen 5
T Import von org.* Java Basics - Anfänger-Themen 6
E Frage zu "import" Java Basics - Anfänger-Themen 5
J Import von Paketen Java Basics - Anfänger-Themen 10
U2nt import wird nicht "angenommen" Java Basics - Anfänger-Themen 9
F import Statement für Klassen die dem default Package zugeordnet sind? Java Basics - Anfänger-Themen 2
O import ja....extends nein Java Basics - Anfänger-Themen 5
T The import In cannot be resolved Java Basics - Anfänger-Themen 31
X Befehl import Java Basics - Anfänger-Themen 21
T import java.util.scanner cannot be resolved Java Basics - Anfänger-Themen 19
G JAR ohne import in anderer JAR aufrufen Java Basics - Anfänger-Themen 3
S BITTE UM HILFE HASHTABLE/import java.util.Hashtable in Ecplipse Java Basics - Anfänger-Themen 12
E import org.eclipse.swt.Events.PaintListener; Java Basics - Anfänger-Themen 1
D Import Java Basics - Anfänger-Themen 2
C import von Java Klasse ohne package Java Basics - Anfänger-Themen 10
P import java.awt.*; nicht gefunden? Java Basics - Anfänger-Themen 21
X JOptionPane.showMessageDialog(); - Import Befehl? Java Basics - Anfänger-Themen 4
0 CSV Import - Zeilen, Spalten Java Basics - Anfänger-Themen 15

Ähnliche Java Themen

Neue Themen


Oben