Добавить в вершину стека число, которое вводиться с клавиатуры. - Free Pascal
Формулировка задачи:
Создать стек со случайными целыми числами в диапазоне [- 120;10]. Добавить в вершину стека число, которое вводиться с клавиатуры.
Решение задачи: «Добавить в вершину стека число, которое вводиться с клавиатуры.»
textual
Листинг программы
program pr; type item = integer; prec = ^trec; trec = record num : item; next : prec; end; procedure print(stack : prec); begin while stack <> nil do begin writeln(stack^.num); stack := stack^.next; end; end; procedure push(var stack : prec; v : item); var t : prec; begin new(t); t^.num := v; t^.Next := Stack; Stack := t; end; var i : integer; c : item; stack : prec = nil; begin randomize; for i := 1 to 10 do push(stack, random(131)-120); print(stack); writeln; writeln('Введите добавляемый элемент'); readln(c); writeln; writeln('Стек с добавленным в вершину элементом'); push(stack,c); print(stack); // тут не забываем очистить стек, иначе будет утечка end.
Объяснение кода листинга программы
- Объявление типа данных
item
иprec
для работы со стеком. - Создание процедуры
print
для вывода элементов стека. - Создание процедуры
push
для добавления элемента в стек. - Объявление переменных
i
,c
иstack
для работы со стеком. - Инициализация стека как
nil
. - Заполнение стека случайными числами от 1 до 10 с помощью цикла и процедуры
push
. - Вывод содержимого стека с помощью процедуры
print
. - Запрос на ввод добавляемого элемента с клавиатуры.
- Добавление введенного элемента в вершину стека с помощью процедуры
push
. - Вывод стека после добавления элемента с помощью процедуры
print
. - Очистка стека после использования (необязательно, но важно для предотвращения утечки памяти).
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д