Недавно добавленные исходники

•  TDictionary Custom Sort  534

•  Fast Watermark Sources  899

•  3D Designer  1 827

•  Sik Screen Capture  1 474

•  Patch Maker  1 481

•  Айболит (remote control)  1 406

•  ListBox Drag & Drop  1 174

•  Доска для игры Реверси  21 775

•  Графические эффекты  1 354

•  Рисование по маске  1 294

•  Перетаскивание изображений  1 096

•  Canvas Drawing  968

•  Рисование Луны  813

•  Поворот изображения  770

•  Рисование стержней  814

•  Paint on Shape  493

•  Генератор кроссвордов  762

•  Головоломка Paletto  667

•  Теорема Монжа об окружностях  855

•  Пазл Numbrix  617

 

 

Архив исходников

   
  Базы данных
  Графика & Мультимедиа
  Сети & Интернет
  Система
  Разное
   

Ссылки и Баннеры ...

 

Delphi Sources

Delphi Sources

 




 

ИСХОДНИК ПРОГРАММЫ

 

. : Chess Logic : .

 

Delphi - Шахматная головоломка-пазл из 12 шахматных фигур

Исходник программы, показывающей пример создания шахматной головоломки.

Нам дается доска размером 4x4 с размещенными на ней 6-ю из 12 шахматных фигур. Необходимо разместить остальные 6 фигур на доске таким образом, чтобы соблюдались следующие ограничения:

  • Две фигуры мужского пола противоположного цвета не могут занимать один ряд, столбец или диагональ.
  • Каждая пешка должна находиться рядом с королем того же цвета.
  • В каждом ряду или столбце не более трех человек.

Описание

Пользователь может перетаскивать другие фигуры, чтобы решить пазл. Когда все 12 фигур находятся на доске, они будут проверены на соответствие условиям, указанным выше.

Кнопка «Решить» сбрасывает доску и решает головоломку, используя поиск в глубину с возвратом. Есть флажки для установки параметров, которые применяются при решении:

Случайный порядок ходов рандомизирует порядок, в котором размещаются фигуры. Для некоторых последовательностей потребуется гораздо больше пробных ходов, прежде чем будет найдено решение.

Флажок Animate Moves перемещает визуальные изображения на доске при применении и удалении перемещения.

Пункт «Показать шаги» отображает текстовое описание каждого пробного хода, сделанного и отозванного по мере выполнения поиска.

Поиск в глубину с возвратом - это мощный и довольно простой метод поиска «пространства» потенциальных последовательностей ходов. Мы пробуем фрагменты по порядку, начиная с первого фрагмента в списке. Когда подходящая позиция для фигуры найдена, мы размещаем ее и переходим к установке следующей фигуры. Это продолжается до тех пор, пока все фигуры не будут размещены или, что более вероятно, мы не зайдем в тупик, где для фигуры не существует действительного хода. Когда это происходит, мы удаляем последний ход предыдущей фигуры и ищем другое допустимое место для хода. Если правильный ход найден, мы продвигаемся снова, если не найден, мы делаем резервную копию другой фигуры, пытаясь поместить ее в другое положение и т.д. пока все шесть фигур не будут размещены (успех), или больше не будет возможных вариантов для попытки (неудача).

Просмотры: 388
Дата: 07.07.2021, Автор: Gary Darby
Написать сообщение:
 

 

Скачать (19 Кб)   ↓ 4   Регистрация >>


 

Похожие исходники


QChess (Чатуранга)

Logical Diagnosis of Car

Logic Simulation

Logic Scheme Constructor

 

StrCmpLogicalW

 

© 2004-2022 "DS"

Соглашение пользователя / Реклама / Карта сайта             Created by BrokenByte Software