Простой стек
Реализуйте структуру данных "стек". Напишите программу, содержащую описание стека и моделирующую работу стека, реализовав все указанные здесь методы. Программа считывает последовательность команд и в зависимости от команды выполняет ту или иную операцию. После выполнения каждой команды программа должна вывести одну строчку. Возможные команды для программы:
- push n
- Добавить в стек число n (значение n задается после команды). Программа должна вывести
ok
. - pop
- Удалить из стека последний элемент. Программа должна вывести его значение.
- back
- Программа должна вывести значение последнего элемента, не удаляя его из стека.
- size
- Программа должна вывести количество элементов в стеке.
- clear
- Программа должна очистить стек и вывести
ok
. - exit
- Программа должна вывести
bye
и завершить работу.
Запрещается использовать стандартный стек, а также стандартные динамические массивы с функциями типа append/push_back. Пишите на массиве фиксированной длины, с индексами-указателями.
Команды управления стеком вводятся в описанном ранее формате по 1 на строке.
Гарантируется, что набор входных команд удовлетворяет следующим требованиям: максимальное количество элементов в стеке в любой момент не превосходит 100, все команды pop
и back
корректны, то есть при их исполнении в стеке содержится хотя бы один элемент.
Требуется вывести протокол работы со стеком, по 1 сообщению в строке
push 3 push 14 size clear push 1 back push 2 back pop size pop size exit
ok ok 2 ok ok 1 ok 2 2 1 1 0 bye