Exemple #1
0
        static void ejemploPilaLineal()
        {
            PilaLineal pila;
            int        x;
            int        CLAVE = -1;

            Console.WriteLine("Ingrese numeros y para terminar -1");
            try
            {
                pila = new PilaLineal();
                do
                {
                    x = Convert.ToInt32(Console.ReadLine());
                    if (x != -1)
                    {
                        pila.insertar(x);
                    }
                } while (x != CLAVE);
                Console.WriteLine("estos son los elementos de la pila");

                while (!pila.pilaVacia())
                {
                    x = (int)(pila.quitar());
                    Console.WriteLine($"Elemento: {x}");
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("Error " + e);
            }
        }
Exemple #2
0
        //Homework 9
        static void LinealQueueExample()
        {
            PilaLineal pila = new PilaLineal();
            int        x;
            int        Clave = -1;

            Console.WriteLine("Ingrese un numero y para terminar -1");
            try
            {
                do
                {
                    x = Convert.ToInt32(Console.ReadLine());
                    pila.insertar(x);
                } while (x != Clave);

                Console.WriteLine("Estos son los elementos");

                while (!pila.pilaVacia())
                {
                    x = (int)(pila.quitar());
                    Console.WriteLine($"elemento:{x}");
                }
            }
            catch (Exception error)
            {
                Console.WriteLine("Error = " + error.Message);
            }
            Console.ReadLine();
        }
Exemple #3
0
        static void ejemploPilaLineal()
        {
            PilaLineal pila;
            int        x;
            int        clave = -1;

            Console.WriteLine("Ingrese numeros y para terminar -1");

            try {
                pila = new PilaLineal();

                do
                {
                    x = Convert.ToInt32(Console.ReadLine());
                    if (x != -1)
                    {
                        pila.insertar(x);
                    }
                } while (x != clave);

                Console.WriteLine("Estos son los elementos de la Pila");

                //para desapilar

                while (!pila.pilaVacia())
                {
                    x = (int)(pila.quitar());
                    Console.WriteLine($"elemento:{x}");
                }
            }
            catch (Exception error) {
                Console.WriteLine("Error= " + error.Message);
            }
        }
Exemple #4
0
        public static void CapicuaStack()
        {
            bool   capicua;
            string numero;

            //mandando a llamar la clase de pila lineal para usar stack
            PilaLineal   pila         = new PilaLineal();
            ColaCircular circula_Cola = new ColaCircular();

            try
            {
                capicua = false;
                while (!capicua)
                {
                    do
                    {
                        Console.WriteLine("\n Teclea un numero: ");
                        numero = Console.ReadLine();
                    } while (!valido(numero));

                    //pone en la cola y en la capicua cada digito
                    for (int i = 0; i < numero.Length; i++)
                    {
                        //se cambio el tipo de dato char a int
                        int c;
                        c = numero[i];
                        circula_Cola.insertar(c);
                        pila.insertar(c);
                    }

                    //se retira de la cola y pila para comparar
                    do
                    {
                        //igual que aca se cambio char por int
                        int d;
                        d       = (int)circula_Cola.quitar();
                        capicua = d.Equals(pila.quitar()); //compara la igualdad
                    } while (capicua && !circula_Cola.colaVacia());

                    if (capicua)
                    {
                        Console.WriteLine($"Numero {numero} es capicua");
                    }
                    else
                    {
                        Console.WriteLine($"Numero {numero} no es capicua");
                        Console.WriteLine("intente otro");
                    }
                }
            }
            catch (Exception errores)
            {
                Console.WriteLine($"Error en {errores.Message} ");
            }

            Console.ReadKey();
        }
Exemple #5
0
        static void listaInversa()
        {
            int        dato;
            String     datos = "";
            PilaLineal pila;
            int        CLAVE = -1;

            Console.WriteLine("****|Ingrese numeros, y para terminar -1: \n");
            try
            {
                pila = new PilaLineal();
                do
                {
                    dato = Convert.ToInt32(Console.ReadLine());
                    if (dato != CLAVE)
                    {
                        pila.insertar(dato);
                    }
                } while (dato != CLAVE);
                Console.WriteLine("****|Estos son los elementos de la pila a la inversa: \n");

                while (!pila.pilaVacia())
                {
                    datos += pila.quitar() + ",";
                }
                int i = datos.Split(",").Length - 2;
                do
                {
                    String c;
                    c = datos.Split(",")[i--];
                    if (c != " ")
                    {
                        Console.WriteLine($"****|Elemento: {c}");
                    }
                } while (i >= 0);
            }
            catch (Exception err)
            {
                Console.WriteLine($"Error = {err.Message}");
            }
        }