/* * C# Program to Implement Stack with Push and Pop operations */ using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { stack st = new stack(); while (true) { Console.Clear(); Console.WriteLine("\nStack MENU(size -- 10)"); Console.WriteLine("1. Add an element"); Console.WriteLine("2. See the Top element."); Console.WriteLine("3. Remove top element."); Console.WriteLine("4. Display stack elements."); Console.WriteLine("5. Exit"); Console.Write("Select your choice: "); int choice = Convert.ToInt32(Console.ReadLine()); switch (choice) { case 1: Console.WriteLine("Enter an Element : "); st.Push(Console.ReadLine()); break; case 2: Console.WriteLine("Top element is: {0}", st.Peek()); break; case 3: Console.WriteLine("Element removed: {0}", st.Pop()); break; case 4: st.Display(); break; case 5: System.Environment.Exit(1); break; } Console.ReadKey(); } } } interface StackADT { Boolean isEmpty(); void Push(Object element); Object Pop(); Object Peek(); void Display(); } class stack : StackADT { private int StackSize; public int StackSizeSet { get { return StackSize; } set { StackSize = value; } } public int top; Object[] item; public stack() { StackSizeSet = 10; item = new Object[StackSizeSet]; top = -1; } public stack(int capacity) { StackSizeSet = capacity; item = new Object[StackSizeSet]; top = -1; } public bool isEmpty() { if (top == -1) return true; return false; } public void Push(object element) { if (top == (StackSize - 1)) { Console.WriteLine("Stack is full!"); } else { item[++top] = element; Console.WriteLine("Item pushed successfully!"); } } public object Pop() { if (isEmpty()) { Console.WriteLine("Stack is empty!"); return "No elements"; } else { return item[top--]; } } public object Peek() { if (isEmpty()) { Console.WriteLine("Stack is empty!"); return "No elements"; } else { return item[top]; } } public void Display() { for (int i = top; i > -1; i--) { Console.WriteLine("Item {0}: {1}", (i + 1), item[i]); } } } } /* Stack MENU(size -- 10) 1. Add an element 2. See the Top Element 3. Remove the Top Element 4. Display Stack Elements 5. Exit Select your Choice : 1 Enter the Element : 25 Item Pushed Successfully! Select your choice :1 Enter the Element : 26 Item Pushed Successfully! Select your choice : 4 Item 2 :26 Item 1 :25