#include
#include
#include
using namespace std;
template
class Queue
{
stack s1,s2;
public:
void push( T x)
{
s1.push(x);
}
void pop()
{
while(s1.size()>1)
{
T element = s1.top();
s2.push(element);
}
cout<<"\n Element poped : "<<s1.top();
s1.pop();
swap(s1,s2);
}
T front()
{
while(s1.size()>1)
{
T element = s1.top();
s2.push(element);
}
T element = s1.top();
swap(s1,s2);
return element;
}
bool empty()
{
return s1.size() == 0;
}
};
int main()
{
Queue q;
q.push(1);
q.push(2);
q.push(3);
q.push(4);
q.push(5);
q.push(6);
q.push(7);
q.push(8);
while (!q.empty())
{
cout<<q.front()<<" ";
q.pop();
}
return 0;
}