Guten Tag liebe Community,
ich bin zurzeit in einem neuen Informatikkurs an meiner Schule.
Unsere Aufgabe bestand darin, ein 4-Gewinnt-Spiel zu programmieren, doch ich finde den Fehler,der beim Compilen angezeigt wird einfach nicht.
Der Fehler wird bei der Methode "public void Steuerung()" (Siehe Zeile 85) angezeigt.
Ich hoffe ihr könnt mir Tipps zur Behebung geben ! ???:L
Hier der Quellcode:
[JAVA=42] import java.util.*;
public class Game
{
Spielfeld meinFeld; // Spielfeld wird definiert
boolean win=false;
public Game() // das Spiel wird eröffnet
{
meinFeld = new Spielfeld(); // Spielfeld meinFeld wird erzeugt
}
public int gibZug1()
{
Eingabeleser meineEingabe = new Eingabeleser();
int spalte = -1;
String t = meineEingabe.gibEingabe();
if(t.equals ("0"));
{
spalte=0;
}
return spalte;
meinFeld.einwerfen(spalte,1);
}
public int gibZug2()
{
Random random =new Random();
int x= random.nextInt(7);
return x;
}
public boolean istGewinn(int[][] meinFeld, int farbe)
{
int spieler;
spieler = farbe;
for(int j=0; j<6;j++)
{
for(int i=0; i<5;i++)
{
if ((meinFeld [j]== spieler)&&
(meinFeld [j+1]== spieler)&&
(meinFeld [j+2]== spieler)&&
(meinFeld [j+3]== spieler))
{
return true;
}
{
if ((meinFeld [j]== spieler)&&
(meinFeld [i+1] [j]== spieler)&&
(meinFeld [i+2] [j]== spieler)&&
(meinFeld [i+3] [j]== spieler))
{
return true;
}
{
if ((meinFeld [j]== spieler)&&
(meinFeld [i+1] [j+1]== spieler)&&
(meinFeld [i+2] [j+2]== spieler)&&
(meinFeld [i+3] [j+3]== spieler))
{
return true;
}
{
if ((meinFeld [j]== spieler)&&
(meinFeld [i+1] [j-1]== spieler)&&
(meinFeld [i+2] [j-2]== spieler)&&
(meinFeld [i+3] [j-3]== spieler))
{
return true;
}
}
}
}
}
}
public void Steuerung()
{
while (win==false)
{
meinFeld.printDisplay();
meinFeld.einwerfen(gibZug1());
meinFeld.printDisplay();
meinFeld.einwerfen(gibZug2());
System.out.println("Gewinn Spieler 1: "+istGewinn(meinFeld.spielefeld,1));
System.out.println("Gewinn Spieler 2: "+istGewinn(meinFeld.spielefeld,2));
}
}
return false;
}
[/code]
ich bin zurzeit in einem neuen Informatikkurs an meiner Schule.
Unsere Aufgabe bestand darin, ein 4-Gewinnt-Spiel zu programmieren, doch ich finde den Fehler,der beim Compilen angezeigt wird einfach nicht.
Der Fehler wird bei der Methode "public void Steuerung()" (Siehe Zeile 85) angezeigt.
Ich hoffe ihr könnt mir Tipps zur Behebung geben ! ???:L
Hier der Quellcode:
[JAVA=42] import java.util.*;
public class Game
{
Spielfeld meinFeld; // Spielfeld wird definiert
boolean win=false;
public Game() // das Spiel wird eröffnet
{
meinFeld = new Spielfeld(); // Spielfeld meinFeld wird erzeugt
}
public int gibZug1()
{
Eingabeleser meineEingabe = new Eingabeleser();
int spalte = -1;
String t = meineEingabe.gibEingabe();
if(t.equals ("0"));
{
spalte=0;
}
return spalte;
meinFeld.einwerfen(spalte,1);
}
public int gibZug2()
{
Random random =new Random();
int x= random.nextInt(7);
return x;
}
public boolean istGewinn(int[][] meinFeld, int farbe)
{
int spieler;
spieler = farbe;
for(int j=0; j<6;j++)
{
for(int i=0; i<5;i++)
{
if ((meinFeld [j]== spieler)&&
(meinFeld [j+1]== spieler)&&
(meinFeld [j+2]== spieler)&&
(meinFeld [j+3]== spieler))
{
return true;
}
{
if ((meinFeld [j]== spieler)&&
(meinFeld [i+1] [j]== spieler)&&
(meinFeld [i+2] [j]== spieler)&&
(meinFeld [i+3] [j]== spieler))
{
return true;
}
{
if ((meinFeld [j]== spieler)&&
(meinFeld [i+1] [j+1]== spieler)&&
(meinFeld [i+2] [j+2]== spieler)&&
(meinFeld [i+3] [j+3]== spieler))
{
return true;
}
{
if ((meinFeld [j]== spieler)&&
(meinFeld [i+1] [j-1]== spieler)&&
(meinFeld [i+2] [j-2]== spieler)&&
(meinFeld [i+3] [j-3]== spieler))
{
return true;
}
}
}
}
}
}
public void Steuerung()
{
while (win==false)
{
meinFeld.printDisplay();
meinFeld.einwerfen(gibZug1());
meinFeld.printDisplay();
meinFeld.einwerfen(gibZug2());
System.out.println("Gewinn Spieler 1: "+istGewinn(meinFeld.spielefeld,1));
System.out.println("Gewinn Spieler 2: "+istGewinn(meinFeld.spielefeld,2));
}
}
return false;
}
[/code]
Zuletzt bearbeitet: