Skip to main content

Program in C to implement stack using array

 #include <stdio.h>
#define MAX 6
int top = -1;
int A[MAX];
void push(int data)
{
    if (top > MAX)
    {
        printf("Stack Overflow");
        return;
    }
    else
    {
        top = top + 1;
        A[top] = data;
    }
}
void pop()
{
    if (top == -1)
    {
        printf("Stack Underflow");
        return;
    }
    else
    {
        int data = A[top];
        --top;
        printf("Removed element is %d", data);
    }
}
void peek()
{
    if (top == -1)
    {
        printf("Stack is empty");
    }
    else
    {
        printf("Recent entered value is %d", A[top]);
    }
}
void display()
{
    int i;
    if (top == -1)
    {
        printf("Stack is empty");
    }
    else
    {
        printf("\nElements in the stack are:\n");
        for (i = top; i >= 0; i--)
        {
            printf("%d\n", A[i]);
        }
    }
}
int main()
{
    int ch; // choice variable
    int value; // to store value from the user
    while (1) // 1 true
    {
        printf("Enter 1 for adding element\nEnter 2 for removing element");
        printf("\nEnter 3 for displaying recent element\nEnter 4 for display entire stack\n");
        printf("Enter 5 to exit\n");
        scanf("%d", &ch);
        if (ch == 1)
        {
            printf("Enter data:");
            scanf("%d", &value);
            push(value);
        }
        else if (ch == 2)
        {
            pop();
        }
        else if (ch == 3)
        {
            peek();
        }
        else if (ch == 4)
        {
            display();
        }
        else if (ch == 5)
            break;
    }
    return 0;
}

Popular posts from this blog

Panagram ISC 2025 Specimen Practical Paper

import java.util.*; class panagram //ISC 2025 Practical Question {     //str for storing the sentence     String str;     panagram()     {         str="";     }     void accept()     {         Scanner sc=new Scanner(System.in);         System.out.println("Enter a sentence:");         str=sc.nextLine();     }     void panagramcheck()     {         int letters[]=new int[26];          StringTokenizer st=new StringTokenizer(str);         while(st.hasMoreTokens())         {             String w = st.nextToken().toUpperCase();             for(int i=65;i<=90;i++)             {                 for(int j=...

Program in Java: ISC Program CellPhone Keystrokes

import java.util.Scanner; public class Keypad {     public static void main(String args[])     {         //Array to hold keystrokes for each letter         int keys[] = new int[26];         //intialise         keys['A'-'A']=1; //A         keys['B'-'A']=2; //B         keys['C'-'A']=3; //C         keys['D'-'A']=1; //D         keys['E'-'A']=2; //E         keys['F'-'A']=3; //F         keys['G'-'A']=1; //G         keys['H'-'A']=2; //H         keys['I'-'A']=3; //I         keys['J'-'A']=1; //J         keys['K'-'A']=2; //K         keys['L'-'A']=3; //L         keys['M'-'A']=1; //M         keys['N'-'A']=2; //N       ...

ISC Program: Predict day of the week from date

Algorithm : 1)Take the last two digits of the year. 2)Divide by 4, discarding any fraction. 3)Add the day of the month. 4)Add the month's key value: JFM AMJ JAS OND 144 025 036 146 5)Subtract 1 for January or February of a leap year. 6)For a Gregorian date, add 0 for 1900's, 6 for 2000's, 4 for 1700's, 2 for 1800's; for other years, add or subtract multiples of 400. 7)For a Julian date, add 1 for 1700's, and 1 for every additional century you go back. 8)Add the last two digits of the year. 9)Divide by 7 and take the remainder. Example : Let's take a date: 26/03/2027 Last two digit of the year = 27 Divide by 4 discard fraction = 27/4 = 6.75 = 6 Add day = 6 + 26 = 32 Month key = 4 + 32 = 36 Add year code = 36 + 6 = 42 Now add two digits of the first year = 42 + 27 = 69 Now get the remainder after dividing by 7 = 69%7=6 So 1 is Sunday so 6 is Friday So 27/03/2027 Program : import java.util.Scanner; public class daydate {     public static void main(String[] arg...