112
М. Э. Абрамян. Электронный задачник Programming Taskbook 4.5
Стек
В заданиях Dynamic3–Dynamic13 структура
«стек» (stack) моделируется
цепочкой связанных узлов-записей типа TNode (см. задание Dynamic2). Поле
Next последнего элемента цепочки равно
NIL
.
Вершиной стека (top) считает-
ся первый элемент цепочки. Для доступа к стеку используется указатель на
его вершину (для пустого стека данный указатель полагается равным
NIL
).
Значением элемента стека считается значение его поля Data.
Dynamic3
◦
. Дано число
D и указатель
P
1
на вершину непустого стека. Доба-
вить элемент со значением
D в стек и вывести адрес
P
2
новой вершины
стека.
Dynamic4. Дано число
N (> 0) и набор из
N чисел. Создать стек, содержа-
щий исходные числа (последнее число будет вершиной стека), и вывести
указатель на его вершину.
Dynamic5
◦
. Дан указатель
P
1
на вершину непустого стека. Извлечь из стека
первый (верхний) элемент и вывести его значение
D, а также адрес
P
2
новой вершины стека. Если после извлечения элемента стек окажется
пустым, то положить
P
2
=
NIL
. После извлечения элемента из стека осво-
бодить память, занимаемую этим элементом.
Dynamic6. Дан указатель
P
1
на вершину стека, содержащего не менее деся-
ти элементов. Извлечь из стека первые девять элементов и вывести их
значения. Вывести также адрес новой вершины стека. После извлечения
элементов из стека освобождать память, которую они занимали.
Dynamic7. Дан указатель
P
1
на вершину стека (если стек пуст, то
P
1
=
NIL
).
Извлечь из стека все элементы и вывести их значения. Вывести также ко-
личество извлеченных элементов
N (для пустого стека вывести 0). После
извлечения элементов из стека освобождать память, которую они занима-
ли.
Dynamic8
Достарыңызбен бөлісу: