示例#1
0
        static void palindromo()
        {
            Tildes     text = new Tildes();
            PilaLineal pilachar;
            bool       esPalindromo;
            String     palabra, palabra1;

            try
            {
                pilachar = new PilaLineal();
                Console.WriteLine("Teclee una palabra para verificar si es palindromo");
                palabra = Console.ReadLine();

                palabra1 = text.quitarTildes(palabra);
                //elimina los espacios en blanco de la cadena
                //creamos la pilac con los datos char
                for (int i = 0; i < palabra1.Length; i++)
                {
                    char c;
                    c = palabra1[i++];
                    pilachar.insertar(c);
                }

                //comprueba si es palindromo
                esPalindromo = true;
                for (int j = 0; esPalindromo && !pilachar.pilaVacia(); j++)
                {
                    Char c;
                    c            = (Char)pilachar.quitarChar();
                    esPalindromo = (palabra1[j++] == c);
                }
                pilachar.LimpiarPila();
                if (esPalindromo)
                {
                    Console.WriteLine($"La palabra {palabra} es palindromo");
                }
                else
                {
                    Console.WriteLine($"La palabra {palabra} no es palindromo");
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("Error: " + e);
            }
        }
示例#2
0
        public void polindromoArray()
        {
            PilaLineal pilaChar;
            bool       esPalindromo;
            String     pal;

            try
            {
                pilaChar = new PilaLineal();
                Console.WriteLine("Teclee una palabra");
                pal = Console.ReadLine();
                //creamos la pila con los char
                foreach (var letra in pal)
                {
                    Char c;
                    c = letra;
                    pilaChar.insertar(c);
                }

                //comprueba si es palindromo
                esPalindromo = true;
                for (int i = 0; esPalindromo && !pilaChar.pilaVacia();)
                {
                    Char c;
                    c            = (Char)pilaChar.quitarChar();
                    esPalindromo = pal[i++] == c; // evalua si la sigueinte letra es igual
                }
                pilaChar.LimpiarPila();
                if (esPalindromo)
                {
                    Console.WriteLine($"La palabra es palindromo");
                }
                else
                {
                    Console.WriteLine($"La palabra no es un palindromo");
                }
            }
            catch (Exception error)
            {
                Console.WriteLine($"ups error {error.Message}");
            }
        }