Поиск кратчайшего пути передвижения слона по шахматному полю
Агентство по образованию
Экономический институт
Курсовая работа
по шахматному полю»
Проверила: Выполнил:
Прудникова Л. И., доцент
______121ПИ
_________,
к. ф. -м. н
,______ Гоман Т. С.
Владивосток 2009
Содержание
Введение
Формальная постановка задачи
Модульная организация приложения
Общая схема взаимодействия модулей
Описание модулей
Текст программы
Руководство пользователя
Тестовый пример игры
Заключение
Введение
Условие решаемой задачи дословно по заданию звучит следующим образом: «найти кратчайший путь передвижения слона по заданному клеточному полю, соединяющих два заданных поля доски»
Целью представленной работы является разработка приложения “Поиск кратчайшего пути”, которое создает шахматную доску, находит кратчайший путь передвижения слона и отображает его.
Перед началом вычисления пользователь должен указывать в программе следующую информацию:
- размерность поля
- установить слона на начальную позицию и указать конечную (при помощи мыши)
После этого программа должна показать кратчайший путь (пути) движения слона, выделяя его другим цветом.
Необходимо предусмотреть контроль целостности вводимых данных.
Формальная постановка задачи
Методы решения
Существует довольно много различных методов решения подобной задачи, каждый из которых основывается на своих принципах и приемах, имеет уникальные преимущества и, соответственно, недостатки. В данной работе был использован метод нахождения кратчайшего пути на графе.
2. Проверим, чтобы слон и его местоположение должны находиться на полях одного цвета.
5. Выберем все возможные клетки, когда слон из начального местоположения и точки назначения, используя ранее полученную матрицу
а) если они имеют одну общую точку, то существует единственный кратчайший путь в 2 хода
б) если они имеют 2 общие точки, то существует 2 различных кратчайших пути, длиной в 2 хода
в) если точек пересечения больше 2, то слон достигает своего конечного местоположения за 1 ход.
Модульная организация приложения
Реализация проекта выполнена в рамках двух модулей. Каждый из них выполняет определенные для него функции. Разделение функций модулей выполнено в соответствии с задачами проекта. В общем случае разделение выполняется на две составные части: проведение расчетов и визуализация полученных данных.
Общая схема взаимодействия модулей
Описание модулей
Каждый из модулей реализует свой класс. Описание модулей призываются к описанию классов (их назначения) и методов классов (решения определенных задач класса).
Текст программы
Руководство пользователя
При разработке приложения применялся принятый в среде Delphi объектно-ориентированный подход реализации интерфейса. При реализации алгоритмов обработки данных использовался структурный подход при проектировании к написании программ приложения.
1. В появившемся при вызове программы окне вводим размерность поля
2. В главном окне отмечаем расположение слона и цели. Отметив на поле слона мы делаем проверку, чтобы пользователь не мог отметить клетку-цель на поле не совпадающее цвету поля слона, а также на поле где расположен сам слон.
3. Если мы вводим размерность поля меньше или больше указанного диапазона, то выводится сообщение
Результатом работы над курсовой работой создано приложение среде Delphi, которое находит в нем кратчайший путь и визуализирует его на форме приложения. Приложение является полупрофессиональным, допускает различные варианты лабиринтов, настройкой соответствующих параметров. Выполненные многочисленные тестовые примеры позволяют утверждать, что надежность программного обеспечения проекта довольно высока.
Список литературы
|