Пример.

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

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

На следующем этапе каждый модуль детализируется. Выделяются укрупненные команды, реализуемые по вспомогательным алгоритмам. Тот же подход применяется при разработке вспомогательных алгоритмов:

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

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

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

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

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

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

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

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

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

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

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

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