Advertisement
Infiniti_Inter

MyStack 74(8)

May 21st, 2019
147
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.02 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <vector>
  4. #include <string>
  5. #include <algorithm>
  6. #include <stack>
  7. #include <queue>
  8. #include <list>
  9. #include <exception>
  10.  
  11. using namespace std;
  12.  
  13.  
  14. ifstream fin("input.txt");
  15.  
  16.  
  17. class Stack
  18. {
  19.     struct Element
  20.     {
  21.         int inf;
  22.         Element *next;
  23.         Element(int x, Element *p) : inf(x), next(p) {}
  24.     };
  25.     Element *head;
  26. public:
  27.     Stack() : head(0) {}
  28.     bool empty()
  29.     {
  30.         return head == 0;
  31.     }
  32.     int pop()
  33.     {
  34.         if (empty())
  35.         {
  36.             return 0;
  37.         }
  38.         Element *r = head;
  39.         int i = r->inf;
  40.         head = r->next;
  41.         delete r;
  42.         return i;
  43.     }
  44.     void push(int data)
  45.     {
  46.         head = new Element(data, head);
  47.     }
  48.     int Тор()
  49.     {
  50.         if (empty())
  51.         {
  52.             return 0;
  53.         }
  54.         else
  55.         {
  56.             return head->inf;
  57.         }
  58.     }
  59. };
  60.  
  61.  
  62. int main()
  63. {
  64.     /*
  65.     1 2 3 4 5 6
  66.     */
  67.     Stack s;
  68.     while (fin.peek() != EOF)
  69.     {
  70.         int cur;
  71.         fin >> cur;
  72.         s.push(cur);
  73.         if (cur % 2 == 0)
  74.             s.push(cur);
  75.     }
  76.     while (!s.empty())
  77.     {
  78.         int cur = s.pop();
  79.         cout << cur << ' ';
  80.     }
  81.     cout << endl;
  82. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement