На этом уроке мы поместим два цикла в один общий цикл, чтобы сгенерировать решения для всех позиций, постепенно увеличивая дистанцию до матового окончания.
Что ещё можно и нужно сделать. 0. Проверить, нет ли патовых ситуаций. 1. Пересмотреть все позиции, для которых нет решения. 2. Изменить массив белого ящик, координата слона от 0 до 31. 3. Модифицировать алгоритм, чтобы он работал для чернопольного слона. 4. Сделать симметрию относительно белого короля в квадрате 4х4. 5. Пересмотреть самые сложные позиции - мат в 67 полуходов. 6. Придумать эффективный способ хранения для белого ящика. 7. Решить задачу "мат двумя слонами". 8. Решить задачу "мат ладьёй". 9. Решить задачу "мат ферзём".
Научился: Нaходить всe решения шaхмaтной зaдaчи сo слоном и конём. Трудности: Долго провозился со следующей ошибкой: написал
public Combo getCombo(string fen)
вместо
private Combo getCombo(string fen)
в результате никакую позицию программа не могла найти.
до сих пор не понимаю, почему так происходит.
Научился: Научился находить любые матовые позиции для коня и слона. Супер-алгоритм получился, прям такое ощущение, что тебя мастер за руку вел и показывал как заматовать короля. Я в восторге.