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); } }
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}"); } }