T
Tjeri
Gast
Ich hab meinen Code soweit fertig, funktioniert alles und so und ich kann einfach den Fehler nicht finden.
Helft mir pls
Helft mir pls
Java:
package SpringerProblem;
public class Loesung {
public static int[][] verlauf = new int[64][2];
public static int[] gemachterZug = new int[64];
public static boolean[][] schachbrett = new boolean[8][8];
public static int[][] moeglicheZuege = new int[8][2];
public static int[] zug = new int[2];
public static int x = 0;
public static int y = 0;
public static int dummy = 0;
public static boolean zugGefunden = false;
public static void main(String[] args) {
ZuegeFuellen();
verlauf[x][0] = 0;
verlauf[x][1] = 0;
schachbrett[0][0] = true;
for (x = 1; x < 64; x++) {
zugGefunden = false;
while (!zugGefunden) {
for (y = dummy; y < 8; y++) {
zug[0] = moeglicheZuege[y][0];
zug[1] = moeglicheZuege[y][1];
if (0 <= verlauf[x - 1][0] + zug[0]
&& verlauf[x - 1][0] + zug[0] < 8
&& 0 <= verlauf[x - 1][1] + zug[1]
&& verlauf[x - 1][1] + zug[1] < 8
&& !schachbrett[verlauf[x - 1][0] + zug[0]][verlauf[x - 1][1]
+ zug[1]]) {
verlauf[x][0] = verlauf[x - 1][0] + zug[0];
verlauf[x][1] = verlauf[x - 1][1] + zug[1];
gemachterZug[x] = y;
schachbrett[verlauf[x][0]][verlauf[x][1]] = true;
zugGefunden = true;
dummy = 0;
System.out.println(x + " - (" + verlauf[x][0]+"|" + verlauf[x][1] + ") - " + gemachterZug[x]);
break;
}
}
if (!zugGefunden) {
EinenZugZurueck();
}
}
}
System.out.println("Beendet.");
}
private static void EinenZugZurueck() {
schachbrett[verlauf[x-1][0]][verlauf[x-1][1]] = false;
dummy = gemachterZug[x-1] + 1;
verlauf[x][0] = 0;
verlauf[x][1] = 0;
x = x - 1;
}
private static void ZuegeFuellen() {
moeglicheZuege[0][0] = 1;
moeglicheZuege[0][1] = 2;
moeglicheZuege[1][0] = -1;
moeglicheZuege[1][1] = 2;
moeglicheZuege[2][0] = 1;
moeglicheZuege[2][1] = -2;
moeglicheZuege[3][0] = -1;
moeglicheZuege[3][1] = -2;
moeglicheZuege[4][0] = 2;
moeglicheZuege[4][1] = 1;
moeglicheZuege[5][0] = 2;
moeglicheZuege[5][1] = -1;
moeglicheZuege[6][0] = -2;
moeglicheZuege[6][1] = 1;
moeglicheZuege[7][0] = -2;
moeglicheZuege[7][1] = -1;
}
}