Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- const int n=3;
- struct Stack
- {
- int A[n];
- int count;
- };
- //создание стека
- void Creation(Stack *p)
- { p->count=0; }
- //проверка стека на пустоту
- int Full(Stack *p)
- {
- if (p->count==0) return 1;
- else if (p->count==n) return -1;
- else return 0;
- }
- //добавление элемента
- void Add(Stack *p)
- {
- int value;
- cout<<"Введите элемент > "; cin>>value;
- p->A[p->count]=value;
- p->count++;
- }
- //удаление элемента
- void Delete(Stack *p)
- { p->count--; }
- //вывод верхнего элемента
- int Top(Stack *p)
- { return p->A[p->count-1]; }
- //размер стека
- int Size(Stack *p)
- { return p->count; }
- //главная функция
- void main()
- {
- setlocale(LC_ALL,"Russian");
- Stack s;
- Creation(&s);
- char number;
- do
- {
- cout<<"1. Добавить элемент"<<endl;
- cout<<"2. Удалить элемент"<<endl;
- cout<<"3. Вывести верхний элемент"<<endl;
- cout<<"4. Узнать размер стека"<<endl;
- cout<<"0. Выйти"<<endl;
- cout<<"Номер команды > "; cin>>number;
- switch (number)
- {
- case '1':
- if (Full(&s)==-1) cout<<endl<<"Стек заполнен\n\n";
- else
- {
- Add(&s);
- cout<<endl<<"Элемент добавлен в стек\n\n";
- } break;
- //-----------------------------------------------
- case '2':
- if (Full(&s)==1) cout<<endl<<"Стек пуст\n\n";
- else
- {
- Delete(&s);
- cout<<endl<<"Элемент удален из стека\n\n";
- } break;
- //-----------------------------------------------
- case '3':
- if (Full(&s)==1) cout<<endl<<"Стек пуст\n\n";
- else cout<<"\nВерхний элемент: "<<Top(&s)<<"\n\n";
- break;
- //-----------------------------------------------
- case '4':
- if (Full(&s)==1) cout<<endl<<"Стек пуст\n\n";
- else cout<<"\nРазмер стека: "<<Size(&s)<<"\n\n";
- break;
- //-----------------------------------------------
- case '0': break;
- default: cout<<endl<<"Команда не определена\n\n";
- break;
- }
- } while(number!='0');
- system("pause");
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement