Skip to main content

Stack using C++(Struct)

 Q). Implement Stack push and pop function using struct in C++


=>Program :


#include<iostream>

#include<iomanip>

using namespace std;

#define MAX 5


typedef struct stack_node{


  int arr[MAX];

  int top;


}node;


void push(int item,node *ptr);

int pop(node *ptr);

void display(node *ptr);


int main(){


int item,choice;

char ch;


node myStack;


myStack.top=-1;



do{


    cout<<"\n************* please press below key for that option *************\n\n";

    cout<<"1.Push Value in stack \n";

    cout<<"2.Pop Value in stack \n";

    cout<<"3.Display \n";

    cin>>choice;


    switch(choice){

     case 1: cout<<"Enter the data : ";

             cin>>item;

             push(item,&myStack);

             break;


     case 2: item=pop(&myStack);

             cout<<"Pop element : "<<item<<endl;

             break;


      case 3: display(&myStack);

              break;


      default : cout<<"Wrong option selected\n";


    }


    cout<<"\nDo you want to run again (y/n) : ";

    cin>>ch;


}while(ch=='y');


}



void push(int item,node *ptr){


if(ptr->top==MAX-1){


cout<<"\nStack Over Flow \n";


}else{


ptr->top++;

ptr->arr[ptr->top]=item;

cout<<"\nStack Push at "<<ptr->top+1<<" position"<<endl;


}


}



int pop(node *ptr){


int item;


if(ptr->top==-1){


cout<<"\nStack Over Flow \n";


}else{


item=ptr->arr[ptr->top];

cout<<"\nStack Pop at "<<ptr->top+1<<" position"<<endl;

ptr->top--;


}

return item;

}



void display(node *ptr){


cout<<"\n\n ********* Stack Status **********\n\n";


for(int i=MAX;i>0;i--){


   if(ptr->top<i-1){

    cout<<setw(4)<<i<<setw(4)<<"|"<<setw(8)<<"|"<<endl;

    cout<<setw(8)<<"|"<<"_______"<<"|"<<endl;

   }else{

    cout<<setw(4)<<i<<setw(4)<<"|"<<setw(4)<<ptr->arr[i-1]<<setw(4)<<"|"<<endl;

    cout<<setw(8)<<"|"<<"_______"<<"|"<<endl;

   }



}


if(ptr->top==MAX-1){

    cout<<endl;

    cout<<setw(8)<<"  "<<"FULL"<<" "<<endl;

}


if(ptr->top==-1){

    cout<<endl;

    cout<<setw(8)<<"  "<<"EMPTY"<<" "<<endl;

}


}


=> Output : 


1. Option Sample:




  =>Full Stack Sample:

                  



=>Empty Stack Sample :







Comments

Popular posts from this blog

Sum of Digit is Pallindrome or not

  Sum of Digit is Pallindrome or not Given a number N.Find if the digit sum(or sum of digits) of N is a Palindrome number or not. Note:A Palindrome number is a number which stays the same when reversed.Example- 121,131,7 etc. Example 1: Input: N=56 Output: 1 Explanation: The digit sum of 56 is 5+6=11. Since, 11 is a palindrome number.Thus, answer is 1. Example 2: Input: N=98 Output: 0 Explanation: The digit sum of 98 is 9+8=17. Since 17 is not a palindrome,thus, answer is 0. Your Task: You don't need to read input or print aything.Your Task is to complete the function isDigitSumPalindrome() which takes a number N as input parameter and returns 1 if the Digit sum of N is a palindrome.Otherwise it returns 0. Expected Time Complexi...

Menu with 5 option & selected option should appear in text box

Q6. Create a menu with 5 options and selected option should appear in text box. Android Program : Activity_main.xml <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"     xmlns:tools="http://schemas.android.com/tools"     android:id="@+id/activity_main"     android:layout_width="match_parent"     android:layout_height="match_parent"     android:paddingBottom="@dimen/activity_vertical_margin"     android:paddingLeft="@dimen/activity_horizontal_margin"     android:paddingRight="@dimen/activity_horizontal_margin"     android:paddingTop="@dimen/activity_vertical_margin"     tools:context="com.kishanhaldar.program6.MainActivity">                 ...

Android Activity Lifecycle Phases

Q2. Create an application to display various android activity lifecycle phases. Android Program :    MainActivity.java package com.kishanhaldar.implicit_intent; package com.example.hp.myhello; import android.content.res.Configuration; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Log; public class MainActivity extends AppCompatActivity {       String msg = "Android :";     @Override     protected void onCreate(Bundle savedInstanceState) {         super.onCreate(savedInstanceState);         setContentView(R.layout.activity_main);         Log.d(msg, "On created Method()");     }     protected void onStart() {         super.onStart(); ...