Задачі
Стек необмеженого розміру
Стек необмеженого розміру
Реалізуйте структуру даних "\textit{стек}". Напишіть програму, яка містить опис стека і моделює роботу стека, реалізувавши усі вказані тут методи. Програма зчитує послідовність команд і у залежності від команди виконує ту чи іншу операцію. Після виконання кожної команди програма повинна вивести один рядок. Можливі команди для програми:
\textbf{push n}
Додати у в стек число \textbf{n} (значення \textbf{n} задається після команди). Програма повинна вивести \textbf{ok}.
\textbf{pop}
Видалити зі стеку останній елемент. Програма повинна вивести його значення.
\textbf{back}
Програма повинна вивести значення останнього елементу, не видаляючи його зі стеку.
\textbf{size}
Програма повинна вивести кількість елементів у стеці.
\textbf{clear}
Програма повинна очистити стек і вивести \textbf{ok}.
\textbf{exit}
Програма повинна вивести \textbf{bye} і завершити роботу.
Розмір стеку повмнен бути обмежений лише роміром доступної оперативної пам'яті. Перед виконанням операцій \textbf{back} та \textbf{pop} програма повинна перевіряти, чи міститься у стеці хоча б один елемент. Якщо у вхідних даних зустрічається операція \textbf{back} чи \textbf{pop}, і при цьому стек порожній, то програма повинна замість числового значення вивести рядок \textbf{error}.
\InputFile
Описані в умові. Див. також приклад вхідних даних.
\OutputFile
Описані в умові. Див. також приклад вихідних даних.
Вхідні дані #1
push 2 push 3 push 5 back size pop size push 7 pop clear size exit
Вихідні дані #1
ok ok ok 5 3 5 2 ok 7 ok 0 bye
Пояснення: Розмір стеку повинен бути обмежений лише розміром доступної оперативної пам`яті.