Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <stack>
- using namespace std;
- class MyStack {
- public:
- int size;
- string name;
- stack<int> steck;
- MyStack(int size, const string &name) : size(size), name(name) {}
- bool isPush(int num){
- if(steck.size()<size){
- this->steck.push(num);
- return true;
- }
- return false;
- }
- bool isPeek(){
- cout.setf(ios::left);
- cout.width(15);
- if(!steck.empty()){
- cout << this->steck.top();
- steck.pop();
- return true;
- }
- cout << ' ';
- return false;
- }
- };
- int main(){
- int size;
- string name;
- cin >> name >> size;
- MyStack *myStack1 = new MyStack(size, name);
- cin >> name >> size;
- MyStack *myStack2 = new MyStack(size, name);
- int a;
- bool flag = true;
- bool flag1, flag2;
- while (flag) {
- cin >> a;
- flag1 = myStack1->isPush(a);
- flag2 = myStack2->isPush(a);
- flag = flag1 && flag2;
- }
- cout << myStack1->name <<' ' << myStack1->size << '\n';
- cout << myStack2->name <<' ' << myStack2->size << '\n';
- cout.setf(ios::left);
- cout.width(15);
- cout << myStack1->name << myStack2->name << '\n';
- flag = true;
- while (flag) {
- flag1 = myStack1->isPeek();
- flag2 = myStack2->isPeek();
- flag = flag1 && flag2;
- cout << '\n';
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement