- 0 = пустое место
- 1 = ферзь
- 2 = угроза со стороны другого ферзя
Когда я выполняю код, только первый ферзь становится размещено:

Массив "LSperrung" предназначен для сохранения последних заблокированных полей, чтобы их можно было сбросить при удалении ферзя. Я подозреваю, что это сработает только в том случае, если вы откажетесь от 1 ферзя. Это не сработает, если вы уберете двух ферзей подряд. Однако я не знаю, как это исправить.
Мой код:
int n = 0;
int [] [] Feld;
int [] [] LSperrung;
int SpalteR = 0;
void FeldGenerieren (int a) {
Feld = new int [n] [n];
LSperrung = new int [n] [n];
for (int i = 0; i< Feld.length; i++) {
for (int j = 0; j< Feld.length; j++) {
Feld [j] = 0;
}
}
}
void FeldAusgeben () {
for (int i = 0; i< Feld.length; i++) {
for (int j = 0; j< Feld.length; j++) {
jTextArea1.append("" + Feld [j] + " ");
}
jTextArea1.append("\n");
}
}
void Algorithmus (int z, int s) {
while (z
Подробнее здесь: https://stackoverflow.com/questions/798 ... irst-queen
Мобильная версия