Описание алгоритма

В программе решаются три независимые друг от друга подзадачи:

1. Перемещение по лабиринту.

2. Запись на диск плана помещений здания.

3. Запись на диск файла подсказки.

Задача "Перемещение по лабиринту" решается в два этапа: 1) формирование списка помещений; 2) выбор направления движения и переход из одного помещения в другое.

Обобщенная схема алгоритма приведена на рис. 5.

Рис. 5. Обобщенная схема алгоритма

При формировании списка плана помещений сначала производится считывание номеров комнат из текстового файла и построение связанного списка, затем построение многосвязанного списка, содержащего в себе план помещений здания (рис. 6).

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

Блок "Выбор направления движения" может быть детализирован на этапе разработки программы.

Аналогично детализируются все составляющие алгоритма.

На этапе разработки технического проекта детализация на уровне операторов программы необязательна.

По условию задачи требуется использование файлов прямого доступа. Файл, содержащий план лабиринта, может быть организован непосредственно в приложении. Для этого разрабатывается отдельный фрагмент программы. Структура файла приведена на рис. 2. В текстовом файле в одной строке записаны номер комнаты и номера комнат смежных помещений. Смежные помещения располагаются в порядке: норд, ост, зюйд, вест. Если смежное помещение отсутствует, то вводится значение 0. Номера комнат в файле могут располагаться в произвольном порядке. Важным является то, что информация о комнате должна быть расположена в отдельной строке.

Разрабатываемое приложение предусматривает использование файлов прямого доступа. В файлах прямого доступа хранится информация подсказки. Файл-помощь может быть сформирован непосредственно в приложении. Для этого разрабатывается отдельный фрагмент программы. Количество компонентов файла равно количеству помещений в здании-лабиринте. Номер компоненты файла соответствует номеру помещения. Правильный ответ расположен в положении, определяющем верное направление. Компонент типизированного файла имеет тип "запись", где отводится поле для хранения вопроса по теме курса и поле - массив предлагаемых ответов.

Запись:

· Поле вопроса.

· Поле 4-х ответов.

В приведенном примере делается вывод о необходимости использования .интегральной среды разработки программ Delphi. Среда Delphi позволяет достаточно быстро разрабатывать приложения для Windows. Технические характеристики компьютера: Pentium 100 и выше; объем оперативной памяти не менее 8 Мб; жесткий диск объемом не менее 500 Мб. Именно эти параметры создают условия для полноценной работы IDE Delphi 3 и программ, созданных в этой среде. Дополнительных средств (принтер, сканер, дополнительные дисководы и т.д.) не требуется.