Advertisement
karbaev

stl-stack

Mar 4th, 2016
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.01 KB | None | 0 0
  1. #include <iostream>
  2. #include <stack>
  3. using namespace std;
  4.  
  5. int main()
  6. {
  7.     setlocale(LC_ALL,"Russian");
  8.     stack <int> S; //создание стека S типа int
  9.     char number;
  10.     int value;
  11.     do
  12.     {
  13.         cout<<"1. Добавить элемент"<<endl;
  14.         cout<<"2. Удалить элемент"<<endl;
  15.         cout<<"3. Получить верхний элемент"<<endl;
  16.         cout<<"4. Узнать размер стека"<<endl;
  17.         cout<<"0. Выйти"<<endl;
  18.         cout<<"Номер команды > ";
  19.         cin>>number;
  20.  
  21.         switch (number)
  22.         {
  23.         case '1': //добавление элемента
  24.             cout<<"Значение > ";
  25.             cin>>value;
  26.             S.push(value);
  27.             cout<<endl<<"Элемент добавлен в стек\n\n";
  28.             break;
  29. //-----------------------------------------------
  30.         case '2': //удаление элемента
  31.             if (S.empty()==true) cout<<"\nСтек пуст\n\n";
  32.             else
  33.             {
  34.                 S.pop();
  35.                 cout<<endl<<"Элемент удален из стека\n\n";
  36.             }
  37.             break;
  38. //-----------------------------------------------
  39.         case '3': //вывод верхнего элемента
  40.             if (S.empty()==true) cout<<"\nСтек пуст\n\n";
  41.             else cout<<"\nВерхний элемент стека: "<<S.top()<<"\n\n";
  42.             break;
  43. //-----------------------------------------------
  44.         case '4': //вывод размера стека
  45.             if (S.empty()==true) cout<<"\nСтек пуст\n\n";
  46.             else cout<<"\nРазмер стека: "<<S.size()<<"\n\n";
  47.             break;
  48. //-----------------------------------------------
  49.         case '0':
  50.             break; //выход
  51.         default:
  52.             cout<<endl<<"Команда не определенная\n\n";
  53.             break;
  54.         }
  55.     }
  56.     while(number!='0');
  57.     return 0;
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement