Занесение элемента в стек

Занесение элемента в стек производится аналогично вставке нового элемента в начало списка. Процедура занесения элемента в стек должна содержать два параметра: первый задает вершину стека, в который нужно занести элемент, второй – заносимое значение элемента стека.

Процедура формирования стека будет иметь следующий вид:

Procedure FormStack;

Var

Stack: EXST; {Текущая переменная}

Digit: integer;

Procedure writeStack(Var u: EXST; Digit: integer);

Var

x: EXST;

Begin

new(x); {выделяем память под хранение нового элемента стека}

x^.Data:= Digit; {заполняем поле данных элемента}

x^.Next:= u; {новый элемент "связываем" со стеком}

u:= x; {созданный элемент определяем как вершину стека}

End;

Begin

Stack:= Nil; {инициализация стека}

writeln('Введите элементы стека. Окончание ввода – 0');

read(Digit);

while Digit <> 0 do

begin

writeStack(Stack, Digit);

read(Digit);

end;

End;


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: