Implementing a stack using array Learn programming C# Sharp

Lesson:

Dynamic Memory Management


Exercise:

Implementing a stack using array 10


Objetive:

Implementing a stack


Code:

using System;
namespace StackInt
{
    class Program
    {
        static void Main(string[] args)
        {
            bool depurando = true;

            Pila miPila = new Pila(5);

            miPila.Apilar(4);
            miPila.Apilar(5);

            Console.WriteLine(miPila.Desapilar());
            Console.WriteLine(miPila.Desapilar());

            if (depurando)
                Console.ReadLine();
        }
    }

    class Pila
    {
        int valor_actual;
        int cantidad_valores;
        int[] valores_pila;

        public Pila(int cantidad_valores)
        {
            valor_actual = 0;
            this.cantidad_valores = cantidad_valores;

            valores_pila = new int[cantidad_valores];
        }

        public void Apilar(int valor)
        {
            if (valor_actual < cantidad_valores)
            {
                valores_pila[valor_actual] = valor;
                valor_actual++;
            }

        }

        public int Desapilar()
        {
            if (valor_actual > 0)
            {
                valor_actual -= 1;
                return valores_pila[valor_actual];
            }
            return 0;
        }
    }
}