в случае, когда расстояние по
обеспечивает отсутствие нападении ферзя
Ферзь
на поля списка
Остальные в случае, когда расстояние по Х между
Ферзь и
Остальные
равно 1. Остается рассмотреть более общий случай произвольного расстояния. Для этого мы добавим его в отношение
небьет в качестве третьего аргумента:
небьет( Ферзь, Остальные, РасстХ)
Соответственно и цель
небьет в отношении
безопасный должна быть изменена на
небьет( Ферзь, Остальные, 1)
Теперь отношение
небьет может быть сформулировано в соответствии с двумя случаями, в зависимости от списка
Остальные: если он пуст, то бить некого и, естественно, нет нападений; если же он не пуст, то
Ферзь
не должен бить первого ферзя из списка
Остальные
(который находится от ферзя
Ферзь на расстоянии
РасстХ вертикалей), а также ферзей из хвоста списка
Остальные, находящихся от него на расстоянии
РасстХ + 1. Эти соображения приводят к программе, изображенной на рис. 4.9.
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий