static void capicuaPilaListayColaCircular()
        {
            bool   capicua;
            string numero;

            PilaLista    pila         = new PilaLista();
            ColaCircular circula_Cola = new ColaCircular();

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

                    //pone en la cola y en la pila cada digito
                    for (int i = 0; i < numero.Length; i++)
                    {
                        Char c;
                        c = numero[i];
                        circula_Cola.insertar(c);
                        pila.insertar(c);
                    }

                    //se retira de la cola y pila para comparar
                    do
                    {
                        Char d;
                        d       = (Char)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($"njmero {numero} no es capicua");
                        Console.WriteLine("intente otro");
                    }

                    // vaciar estructuras

                    circula_Cola.borrarCola();
                    pila.limpiarPila();
                }
            }
            catch (Exception errores)
            {
                Console.WriteLine($"Error en {errores.Message}");
            }
        }
Ejemplo n.º 2
0
        static void Capicua_original()
        {
            bool   capicua;
            String numero;

            PilaLista    pila          = new PilaLista();
            ColaCircular circular_cola = new ColaCircular();

            try
            {
                capicua = false;

                while (!capicua)
                {
                    do
                    {
                        Console.WriteLine("Teclea un número");
                        numero = Console.ReadLine();
                    } while (!validar(numero));

                    //Pone en la cola y en la pila cada digito
                    for (int i = 0; i < numero.Length; i++)
                    {
                        char c;
                        c = numero[i];
                        circular_cola.insertar(c);
                        pila.insertarPila(c);
                    }

                    //Desencolar, se retira la cola y pila para comparar
                    do
                    {
                        char d;
                        d       = (Char)circular_cola.quitar();
                        capicua = d.Equals(pila.quitar());//Compara la igualdad
                    } while (capicua && !circular_cola.colaVacia());

                    if (capicua)
                    {
                        Console.WriteLine($"Numero {numero} es capicua");
                    }
                    else
                    {
                        Console.WriteLine($"El numero {numero} no es capicua");
                        Console.WriteLine("Intente otro :)");
                    }

                    circular_cola.borrarCola();
                    pila.LimpiarPila();
                }
            }
            catch (Exception errores)
            {
                Console.WriteLine($"Error en{errores.Message} ");
            }
        }
Ejemplo n.º 3
0
        public static void esCapicula_UMG()
        {
            //programa capicua

            bool         capicua;
            string       numero;
            Ejercicios   ejercicios   = new Ejercicios();
            PilaLista    pila         = new PilaLista();
            ColaCircular colaCircular = new ColaCircular();

            try
            {
                capicua = false;
                while (!capicua)
                {
                    do
                    {
                        Console.WriteLine("\nTeclee un numero: ");
                        numero = Console.ReadLine();
                    } while (!ejercicios.valido(numero));
                    //pone en la cola y en la pila cada digito
                    for (int i = 0; i < numero.Length; i++)
                    {
                        char c;
                        c = numero[i];
                        colaCircular.insertar(c);
                        pila.insertar(c);
                    }
                    //se retira de la cola y pila para comparar
                    do
                    {
                        char d;
                        d       = (char)colaCircular.quitar();
                        capicua = d.Equals(pila.quitar());
                    } while (capicua && !colaCircular.colaVacia());
                    if (capicua)
                    {
                        Console.WriteLine($"Numero {numero} es capicua");
                    }
                    else
                    {
                        Console.WriteLine($"Numero {numero} no es capicua");
                        Console.WriteLine("Intente otro");
                    }
                    //vaciar estructuras
                    colaCircular.borrarCola();
                    pila.limpiarPila();
                }
            }
            catch (Exception errores)
            {
                Console.WriteLine($"Eror en {errores.Message}");
            }
        }
Ejemplo n.º 4
0
        static void capicua()
        {
            Queue qt = new Queue();
            //qt.Enqueue("hola");
            //qt.Enqueue("esto");
            //qt.Enqueue("es");
            //qt.Enqueue("una");
            //qt.Enqueue("prueba");

            //Console.WriteLine($"La cola tiene {qt.Count} elementos");
            //Console.WriteLine($"Desencolando {qt.Dequeue()}");

            //programa capicua
            bool         capicua;
            string       numero;
            PilaLista    pila         = new PilaLista();
            ColaCircular circula_Cola = new ColaCircular();



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

                    //pone en la cola y en la pila cada digito

                    for (int i = 0; i < numero.Length; i++)
                    {
                        Char c;
                        c = numero[i];
                        circula_Cola.insertar(c);
                        pila.insertar(c);
                    }

                    //se retira de la cola y de la pila comparar
                    do
                    {
                        Char d;
                        d       = (Char)circula_Cola.quitar();
                        capicua = d.Equals(pila.quitar());
                    } while (capicua && !circula_Cola.colaVacia());
                    if (capicua)
                    {
                        Console.WriteLine($"Numero{numero} es Capicua");
                    }
                    else
                    {
                        Console.WriteLine($"El numero {numero} no es capicua");

                        Console.WriteLine("Ingrese otro numero: ");
                    }
                    //vaciar estructuras

                    circula_Cola.borrarCola();
                    pila.limpiarPila();
                }
            }
            catch (Exception error)
            {
                Console.WriteLine($"Error en {error.Message} ");
            }
        }