Мы продолжаем написание шахматных алгоритмов. На этом уроке мы будем защищать короля от ШАХа.
Дата отправки отчёта:
14 марта 2018 г.
Задание выполнено: за
4 час. 43 мин.
Чему научился:
доработка программы
Оценка видео-уроку:
Оцени работу
Сохранить страницу:
Отчёт оценивали: 6452. Кирилл Шмойлов+117443. WildOrc+1459. Сергей Сергеевич+112230. LINKI+110494. Алексей В.+117334. Дмитрий Б09913. vip+13922. Александр+1791. Валерий Жданов+18275. Tekashnik+19014. Николай Денисов+19980. Timoha+117728. Lego+116218. Дмитрий+117693. Алексей06203. Николай Миролюбов+18932. Алекс+116533. Андрей Шевченко+12639. Морозов Юрий Александрович+11. Евгений Волосатов+19156. Dimon+116017. Sergej Šugajev+1
Начинаем практику по языку C#
Чтобы стать хорошим программистом — нужно писать программы.
На нашем сайте очень много практических упражнений.
После заполнения формы ты будешь подписан на рассылку
«C# Вебинары и Видеоуроки»,
у тебя появится доступ к видеоурокам и консольным задачам.
Несколько раз в неделю тебе будут приходить письма —
приглашения на вебинары, информация об акциях и скидках,
полезная информация по C#.
Научился: Подготовил FEN для тестирования;
Дописал функцию Chess().YieldValidMoves();
Реализовал функции IsCheckAfterMove(), CanEatKing(), FindBadKing() и IsCheck() в классе Board();
Доработал функцию Moves().CanKingCastle();
Создал конструктор FigureMoving() для пустого хода;
Протестировал работу до мата. Трудности: Ничего. Ждем большого тестирования =)
Научился: Оказалось, что проверка на шах ломает введённое копирование параметров из board в nextBoard, так что пока вернул ресурсоёмкую генерацию всех параметров при пересоздании доски, но позже вернусь к этому вопросу.
Ещё нашёл и исправил ошибку с упущенными скобками, которые не позволяли ладье совершить рокировку. Ничто так не позволяет понять строение проекта, как дебаггинг :)