// StackReverse #include #include using namespace std; void pushBottom(stack &s,int TopElement){ //Base caes if(s.empty()){ s.push(TopElement); return; } //Recursive case int top = s.top(); s.pop(); pushBottom(s,TopElement); s.push(top); } void StackReverse(stack &s){ //Base case if(s.empty()){ return; } //Recursive case int TopElement = s.top(); s.pop(); StackReverse(s); pushBottom(s,TopElement); } void print(stack s){ while(!s.empty()){ cout< s; s.push(4); s.push(3); s.push(2); s.push(1); print(s); StackReverse(s); cout<