Курсы по программированию

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

Шахматы по сети / Алгоритмы. Защита короля

  • Мы продолжаем написание шахматных алгоритмов.
    На этом уроке мы будем защищать короля от ШАХа.
  • Дата отправки отчёта: 13 декабря 2020 г.
  • Задание выполнено: за 1 день 12 час. 26 мин.
  • Чему научился: Генерировать защиту короля
  • Что было сложным: bool CanEatKing()
  • Оценка видео-уроку:
Отчёт от 28739 за Шахматы по сети / Алгоритмы. Защита короля




Оцени работу

 
Сохранить страницу:

  • Отчёт оценивали:
    25450MaxB+1   29485Илья0   8835Булат+1   29484Владислав0   791Валерий Жданов+1   24765Anatoli+1   9980Timoha+1  

Начинаем практику по языку C#





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: Подготовил FEN для тестирования; Дописал функцию Chess().YieldValidMoves(); Реализовал функции IsCheckAfterMove(), CanEatKing(), FindBadKing() и IsCheck() в классе Board(); Доработал функцию Moves().CanKingCastle(); Создал конструктор FigureMoving() для пустого хода; Протестировал работу до мата.
Трудности: Ничего. Ждем большого тестирования =)



Научился: Оказалось, что проверка на шах ломает введённое копирование параметров из board в nextBoard, так что пока вернул ресурсоёмкую генерацию всех параметров при пересоздании доски, но позже вернусь к этому вопросу. Ещё нашёл и исправил ошибку с упущенными скобками, которые не позволяли ладье совершить рокировку. Ничто так не позволяет понять строение проекта, как дебаггинг :)