Ejemplo n.º 1
0
        //Ejercicio de Pila Lineal usando Lista Enlazada Simple
        static void EjemploPilaLineal_ListaEnlazada()
        {
            clsPilaLineal pilaLineal;
            int           x;
            int           clave = -1;

            Console.WriteLine("Ingrese los números y para terminar -1");

            try
            {
                pilaLineal = new clsPilaLineal();

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

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

                pilaLineal.desplegarPila();
            }
            catch (Exception error)
            {
                Console.WriteLine("Error :" + error.Message);
            }
        }
Ejemplo n.º 2
0
        static void ejemploPilaLineal()
        {
            clsPilaLineal pila;
            int           x;
            int           clave = -1;

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

            try
            {
                pila = new clsPilaLineal();//instanciando pila
                do
                {
                    x = Convert.ToInt32(Console.ReadLine());

                    if (x != -1)
                    {
                        pila.insertar(x);
                    }
                } while (x != clave);

                Console.WriteLine("Estos son los elementos de la pila: \n");

                //desapilar
                while (!pila.PilaVacia())
                {
                    x = (int)(pila.quitar());
                    Console.WriteLine($"Elemento: {x}");
                }
            }
            catch (Exception error)
            {
                Console.WriteLine("Error =" + error.Message);
            }
        }
Ejemplo n.º 3
0
        //Ejercicio de Palíndromo usando Lista Enlazada Simple
        static void Palindromo_ListaEnlazada()
        {
            clsPilaLineal pilaChar;
            bool          esPalindromo;
            String        pal;


            try
            {
                pilaChar = new clsPilaLineal();
                Console.WriteLine("Teclee una palabra para ser ver si es palíndromo: ");
                pal = Console.ReadLine();
                String sinTilde = Regex.Replace(pal.Normalize(System.Text.NormalizationForm.FormD), @"[^a-zA-z0-0]+", "");
                Console.WriteLine("Palabra sin tildes : " + sinTilde);
                sinTilde = sinTilde.Replace(" ", "");
                Console.WriteLine("Nueva cadena de texto sin espacios : " + sinTilde);

                for (int i = 0; i < sinTilde.Length;)
                {
                    //Insertamos el caracter, agarrando letra por letra
                    char c;
                    c = sinTilde[i++];
                    pilaChar.insertarNodo(c);
                }

                esPalindromo = true;
                for (int j = 0; esPalindromo && !pilaChar.pilaVacia();)
                {
                    char c;
                    //Extraer uno a uno
                    c = (char)pilaChar.quitarChar();
                    //Console.WriteLine("Valor c: " + c);
                    esPalindromo = sinTilde[j++] == c; //Evalúa si la pos es igual
                }

                if (esPalindromo)
                {
                    Console.WriteLine($"La palabra {sinTilde} es palindromo");
                }
                else
                {
                    Console.WriteLine($"NEl no ees");
                }
            }
            catch (Exception error)
            {
                Console.WriteLine($"error{error.Message}");
            }
        }
Ejemplo n.º 4
0
        public void palindromo()
        {
            clsPilaLineal pilaChar;
            bool          esPalindromo;

            try
            {
                pilaChar = new clsPilaLineal();
                Console.WriteLine("Teclee una palabra: ");
                String pal = "";
                //Quito los espacios y las letras con tilde
                pal = Regex.Replace(Console.ReadLine().Normalize(NormalizationForm.FormD), @"[^a-zA-z0-9]+", "")
                      + Regex.Replace(pal, @"\s", "").ToLower();

                for (int i = 0; i < pal.Length;)
                {
                    Char c;
                    c = pal[i++];
                    if (c != ' ')
                    {
                        pilaChar.insertar(c);
                    }
                }
                esPalindromo = true;
                for (int j = pal.Length - 1; esPalindromo && !pilaChar.PilaVacia();)
                {
                    char c;
                    c            = (char)pilaChar.quitarChar();
                    esPalindromo = pal[j--] == c;
                }
                pilaChar.limpiarPila();
                if (esPalindromo)
                {
                    Console.WriteLine($"la palabra {pal} es palindromo");
                }
                else
                {
                    Console.WriteLine("Nel no es");
                }
            }
            catch (Exception error)
            {
                Console.WriteLine($"Upss error {error.Message}");
            }
        }