Definition of
Stack :
Stack is an abstract data type that serves as a collection of elements.
Stack works with two principal operations which are push and pop.
What are push and pop in stack:
Principle of stack:
LIFO is the principle of stack whose means “last
in first out”. that is anything which we add first in stack can be
remove/return at the last and anything which we add at the last in stack can be
remove/return at first.
Examples of stack:
- Stack of books
- Car parking in a building
An example of stack with code using visual
studio
#include<iostream>
using
namespace std;
class
stack
{
private:
int top;
int data;
int array[5];
public:
stack()
{
top = -1;
}
void getdata()
{
cout<<"enter
data to push in stack" << endl;
cin >> data;
}
void push()
{
if (top == 5)
cout << "stack is full" << endl;
else
{
top++;
array[top] = data;
}
}
void pop()
{
if (top == -1)
cout << "stack is empty" << endl;
else
{
array[top] = NULL;
top--;
}
}
void disply()
{
for (int i = 0; i <= top; i++)
{
cout << array[i] << endl;
}
cout << endl;
}
};
void
main()
{
stack a;
start:
int r;
char ch;
do
{
cout << "integer array" << endl;
cout << "press 1 to push element in stack & press 2 to pop
it" << endl;
cout << " press 3 to display stack" << endl;
cin >> r;
switch (r)
{
case 1:
a.getdata();
a.push();
break;
case 2:
a.pop();
break;
case 3:
a.disply();
break;
default:
cout << "bad input" << endl;
break;
}
cout << "do you want to process more, press y/n" << endl;
cin >> ch;
} while (ch != 'n');
{
goto start;
}
system("pause");
}