Курсовая работа: Поиск кратчайшего пути в лабиринте
Описание программы
Общие сведения
Наименование программы: “Поиск кратчайшего пути”
Для функционирования программы необходима Операционная Система Windows 9x.
Кодировка производилась в среде программирования Borland C++.
Функциональное назначение
Классы задач, которые решаются с помощью программы: программа находит кратчайший путь в лабиринте.
Описание логической структуры
Программа имеет главную функцию main, которая описана в файле sapr_kyrsovik.cpp, с которой начинается выполнение программы. Также программа имеет библиотечные функции, которые описаны в заголовочном файле head.h. Заголовочный файл содержит все остальные функции, используемые в пограмме. Программа имеет структуру с именем Lab, которая содержит двухмерный массив карты лабиринта (Мар[MY][MX]) и двухмерный массив карты прохождения (Put[MY][MX]). В эту структуру производится запись координат комнат и дверей лабиринта.
Программа состоит из следующих функций:
int Grin(struct Lab *P)
Она выполняет:
инициализацию графики: очищается экран, включается графический режим
рисует сетку лабиринта
инициализацию масивов структуры P
void Rasstan(struct Lab *P) – функция расставляет комнаты и двери на карте поля, а также удаляет их, это реализуется с помощью клавиш управления курсором (<> - вверх, <> - вниз, <> - вправо, <> - влево) и клавиш специального назначения (например, при помощи клавиши <к> происходит ввод комнаты, при помощи клавиши <д> происходит ввод двери, при помощи клавиши <я> можно удалять комнаты или двери). Эта функция вызывает дополнительные две функции:
void vyvod(int x, int y) – функция рисует рамочку белого цвета, служащую курсором для расстановки и удаления комнат и дверей а также служащую для ввода входа и выхода в лабиринте.
void maska (int x, int y) – функция скрывает(закрашивает) курсор.
void Vvod(struct Lab *P, int *x1, int *y1, int *x2,int *y2) – функция запрашивает ввести вход в лабиринт, после чего с помощью клавиш управления курсором и клавиши Enter функция считывает вход, далее функция запрашивает ввести выход.
int Find(struct Lab *P, int x1, int y1, int x2,int y2) – выполняет поиск пути.
void Puty(struct Lab *P, int x1, int y1, int x2,int y2) – функция прорисовывает путь.
Используемые технические средства
Необходимы следующие технические средства:
486 DX-4 100 MHz процессор и выше;
8 Мб ОЗУ и выше;
Монитор, мышь и клавиатура.
Вызов и загрузка
Вызов программы осуществляется посредством запуска файла sapr_kyrsovik.exe. Программа занимает 40 байт.
Входные данные