Мы продолжаем написание шахматных алгоритмов. На этом уроке мы реализуем проверку может ли Knight пойти с одной клетки на другую.
Дата отправки отчёта:
10 июля 2018 г.
Задание выполнено: за
18 мин.
Чему научился:
Ну, по вопросу на прошлом уроке я ответил, что конь - самая сложная для проверки фигура. Думал, ходы у него не прямолинейные, а "заковыристые". (осталось такое впечатление со времени моих детских попыток разобраться в шахматах) Оказалось - наоборот)))
Что было сложным:
Всё ещё не пойму, где напортачил. Фигуры не ходят, ФЭН не изменяется, а остаётся изначальным. Скрины наглядные приводил в прошлых уроках.
Научился: Добавил на доску белого и чёрного коней
Реализовал функцию Moves().CanKnightMove()
Доработал функцию CanFigureMove()
Протестировал работу текущего функционала
Научился: Изменил FEN доски (добавил только коней для теста);
Остальное была ДЗ: Реализовал функцию возможности хода коня Moves().CanKnightMove();
Изменил функцию CanFigureMove();
Протестировал работу;
Пока оставил свой вариант хода коня, ошибок пока не было;
...
return (fm.AbsDeltaX >= 1 && fm.AbsDeltaX <= 2 && fm.AbsDeltaX + fm.AbsDeltaY == 3);
...
Убедился в правильности своих ответов на предыдущий вопрос про сложность реализации. Трудности: Легко, было сделано самостоятельно.