На этом уроке мы реализуем функцию is_check(), чтобы король не ходил на клетку, которая под боем.
На время теста вы уберём все пешки и добавим функцию is_check() с генерируемой случайностью шаха для всех фигур на поле.
Дата отправки отчёта:
16 января 2017 г.
Задание выполнено: за
25 мин.
Чему научился:
Начал проверку возможных ходов с учётом угрозы шаха. Я так понимаю что если нам грозит шах, то мы можем ходить только теми фигурами и на те клетки которые закроют нас от шаха. Хотя в шахматы играть не умею.
Что было сложным:
=)
Комментарии:
=)
Оценка видео-уроку:
Оцени работу
Сохранить страницу:
Начинаем практику по языку C#
Чтобы стать хорошим программистом — нужно писать программы.
На нашем сайте очень много практических упражнений.
После заполнения формы ты будешь подписан на рассылку
«C# Вебинары и Видеоуроки»,
у тебя появится доступ к видеоурокам и консольным задачам.
Несколько раз в неделю тебе будут приходить письма —
приглашения на вебинары, информация об акциях и скидках,
полезная информация по C#.
Научился: Доработана функция can_move()
Добавлена функция is_check() Трудности: Не все ходы доступны, так как после условно недоступного хода был бы условный шах королю ходившей стороны.
Мой алгоритм функции is_check() :
условно допустить сделанный ход,
найти координату короля ходившей стороны (она могла поменяться, но не обязательно),
проверить. может ли фигура соперника (Q R B N) пойти на координату с твоим королем, ИЛИ
проверить, может ли пешка соперника побить наискосок координату с твоим королем.
Если оба вопроса ложь, то возвращаем ложь, шаха нет.
Если же координата под боем, возвращаем истину, нашему королю шах.