// Online C# Editor for free
// Write, Edit and Run your C# code using C# Online Compiler
using System;
// Works in LIFO
public class Stack
{
public int top;
public int[] items;
public int maxSize;
public Stack(int size)
{
maxSize = size;
items = new int[maxSize];
top = -1;
}
public bool isEmpty()
{
return top == -1;
}
public void Push(int num)
{
if(top == maxSize - 1)
{
Console.WriteLine("Stack Overflow");
return;
}
items[++top] = num;
}
public int Pop()
{
if(isEmpty())
{
return -1;
}
return items[top--];
}
public void PrintStack()
{
if(isEmpty())
{
return;
}
for(int i= top; i >= 0; i--)
{
Console.WriteLine(items[i]);
}
}
public int Peek()
{
if(isEmpty())
{
return -1;
}
return items[top];
}
public void ReverseArray(int[] items)
{
Console.WriteLine("Reversing the array...");
for(int i=0; i <= top; i++)
{
Console.WriteLine(items[i]);
}
}
}
public class HelloWorld
{
public static void Main(string[] args)
{
Stack l1 = new Stack(5);
l1.Push(10);
l1.Push(20);
l1.Push(30);
l1.Push(40);
l1.Push(50);
l1.PrintStack();
l1.ReverseArray(l1.items);
int peekValue = l1.Peek();
Console.WriteLine("Peek Value: ");
Console.WriteLine(peekValue);
}
}