Скачиваний:
60
Добавлен:
02.05.2014
Размер:
118.78 Кб
Скачать
  1. Программная модель

Текст подпрограммы приведен в седьмом разделе текста программы.

Разработка второй подпрограммы

  1. Спецификация

  1. Назначение: исключение очередного элемента из стека

  2. Имя: ISKL

  3. Вид: функция.

Выбор данного вида подпрограммы обусловлен тем, что, если подпрограмма может не выполнить свое назначение, то она должна сигнализировать об этом. Обычно, такую подпрограмму оформляют в виде функции, которая вырабатывает результат истина (true), когда назначение подпрограммы выполнено, и ложь (false), когда назначение подпрограммы не может быть выполнено. В данной подпрограмме назначение может быть выполнено только в том случае, когда стек не пуст.

  1. Перечень параметров:

    Статус

    Назначение

    Имя

    Тип

    Вид

    Вход/выход

    Голова стека

    Head

    PEL

    Параметр-переменная

    Выход

    Информация, исключаемая из стека

    Inf

    Tinf

    Параметр-значение

    Выход

    Результат выполнения функции

    ISKL

    boolean

    -

  2. Заголовок:

Function ISKL (Var Head:PEL; Var Inf: Tinf):boolean;

  1. Метод решения

Проиллюстрируем процесс исключения элемента из стека:

  1. Проверяем невозможность выполнения исключения очередного элемента из стека. Если голова не содержит ссылки на очередной элемент, то результату функции присваиваем значение ложь. В этом случае значения выходных параметров, указанных в списке параметров не формируется;

  2. В противном случае:

    1. Результату функции присваиваем значение истина;

    2. Выходному параметру – переменной, в которой располагается исключаемая информация, присваивается значение информационного поля элемента, на который указывает голова;

    3. Рабочему указателю, с помощью которого будем освобождать память, присваиваем значение головы (указателя на первый элемент стека);

    4. Формируем новое значение головы – заносим в нее адрес, расположенный в первом элементе стека;

    5. Удаляем первый элемент стека (на него указывает рабочий указатель).

  1. Информационная модель

Назначение

Имя

Тип

Указатель на первый элемент

tek

PEL

  1. Программная модель

Текст подпрограммы приведен в седьмом разделе текста программы.

Разработка третьей подпрограммы

  1. Спецификация

  1. Назначение: просмотр содержимого списка (подпрограмма справедлива для просмотра любого линейного списка)

  2. Имя: PROSMOTR

  3. Вид: процедура.

  4. Перечень параметров:

    Статус

    Назначение

    Имя

    Тип

    Вид

    Вход

    Голова стека

    Head

    PEL

    Параметр-значение

  5. Заголовок:

Procedure PROSMOTR (Head:PEL);

  1. Метод решения

  1. Если голова не указывает на элемент списка, то сообщаем, что список пуст;

  2. В противном случае:

    1. Указателю на текущий элемент присваиваем значение головы (указываем на первый элемент списка);

    2. Фиксируем номер первого элемента;

    3. Пока указатель на текущий элемент ссылается на элемент (значение указателя не равно NIL) повторяем:

а) выводим на экран номер элемента и его информационную часть;

б) формируем значение указателя на следующий элемент списка;

в) увеличиваем номер элемента на единицу;

2.4) Выводим на экран сообщение, что список просмотрен.

Соседние файлы в папке Лекции по Паскалю