Hallo,
ich habe ein Problem mit einer Aufgabe, die uns im Studiengang Informatik gestellt wurde:
Es geht um das Acht-Damen-Problem und wir haben in der Vorlesung folgende Methode zur Lösung geschrieben:
Es geht jetzt darum, die Methode so abzuändern, dass er alle Möglichkeiten zählt, welche die Damen annehmen können, ohne sich gegenseitig schlagen zu können.
Meine Überlegung ist die Folgende: Soblad x = 8 wird, habe ich ja im Prinzip alle 8 Damen gesetzt, d.h. ich habe bereits eine Lösung gefunden und kann den Zähler um eins erhöhen.
Jetzt muss ich diese Lösung irgendwie ausschließen und eine neuen Versuch starten.
Und dabei komme ich nicht weiter. Könnte mir dabei Jemand helfen?
Vielen Dank.
LG
The_Dentist
ich habe ein Problem mit einer Aufgabe, die uns im Studiengang Informatik gestellt wurde:
Es geht um das Acht-Damen-Problem und wir haben in der Vorlesung folgende Methode zur Lösung geschrieben:
Code:
public static boolean loese (int x) {
if (x==8) return true;
for (int y=0;y<8;y++) {
feld [x] = y;
if (zulaessig(x))
if (loese (x+1)) return true;
}
return false;
}
Meine Überlegung ist die Folgende: Soblad x = 8 wird, habe ich ja im Prinzip alle 8 Damen gesetzt, d.h. ich habe bereits eine Lösung gefunden und kann den Zähler um eins erhöhen.
Jetzt muss ich diese Lösung irgendwie ausschließen und eine neuen Versuch starten.
Und dabei komme ich nicht weiter. Könnte mir dabei Jemand helfen?
Vielen Dank.
LG
The_Dentist