Simple Stack Program using functions in C++ Programming


Definition

A stack is a basic computer science data structure and can be defined in an abstract, implementation-free manner, or it can be generally defined as a linear list of items in which all additions and deletion are restricted to one end that is Top.

Simple Stack Program using functions in C++ Programming

/* Simple Stack Program Example Using Functions in C++*/
/* Data Structure Programs,Stack Programs,C++ Examples */

#include<iostream>

#include<stdio.h>
#include<conio.h>
#include<stdlib.h>

#define MAX_SIZE 5

using namespace std;

int item, choice, i;
int arr_stack[MAX_SIZE];
int top = 0;
int exit_p = 1;

void push() {
    if (top == MAX_SIZE)
        cout << "\n## Stack is Full!";
    else {
        cout << "\nEnter The Value to be pushed : ";
        cin>>item;
        cout << "\n## Position : " << top << ", Pushed Value  :" << item;
        arr_stack[top++] = item;
    }
}

void pop() {
    if (top == 0)
        cout << "\n## Stack is Empty!";
    else {
        --top;
        cout << "\n## Position : " << top << ", Popped Value  :" << arr_stack[top];
    }
}

void display() {
    cout << "\n## Stack Size : " << top;
    for (i = (top - 1); i >= 0; i--)
        cout << "\n## Position : " << i << ", Value  :" << arr_stack[i];
}

int main() {
    cout << "\nSimple Stack Example - Array and Functions - C++";
    do {
        cout << "\n\nStack Main Menu";

        cout << "\n1.Push \n2.Pop \n3.Display \nOthers to exit";
        cout << "\nEnter Your Choice : ";
        cin>>choice;
        switch (choice) {
            case 1:
                push();
                break;
            case 2:
                pop();
                break;
            case 3:
                display();
                break;
            default:
                exit_p = 0;
                break;
        }
    } while (exit_p);

    return 0;
}

Sample Output

Simple Stack Example - Array and Functions

Stack Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 1

Enter The Value to be pushed : 1

## Position : 0 , Pushed Value  : 1

Stack Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 1

Enter The Value to be pushed : 2

## Position : 1 , Pushed Value  : 2

Stack Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 1

Enter The Value to be pushed : 3

## Position : 2 , Pushed Value  : 3

Stack Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 1

Enter The Value to be pushed : 4

## Position : 3 , Pushed Value  : 4

Stack Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 1

Enter The Value to be pushed : 5

## Position : 4 , Pushed Value  : 5

Stack Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 1

## Stack is Full!

Stack Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 2

## Position : 4 , Popped Value  : 5

Stack Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 2

## Position : 3 , Popped Value  : 4

Stack Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 2

## Position : 2 , Popped Value  : 3

Stack Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 2

## Position : 1 , Popped Value  : 2

Stack Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 2

## Position : 0 , Popped Value  : 1

Stack Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 2

## Stack is Empty!

Stack Main Menu
1.Push
2.Pop
3.Display
Others to exit
Enter Your Choice : 4