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