RECIENTES

Palíndromo C# console

Palíndromo: Escribe un programa que determine si una palabra ingresada por el usuario es un palíndromo, es decir, si se lee igual de izquierda a derecha que de derecha a izquierda.

  1. 1. Primero, creamos un nuevo proyecto C# en la consola (Console Application) en el IDE de desarrollo de tu elección, como Visual Studio.


  2. 2. Después, declaramos un espacio de nombres (namespace) para nuestro programa. En este caso, lo nombré como "PalindromoChecker".


  3. 3. Dentro del espacio de nombres, creamos una clase llamada "Program". Esta es la clase principal que contiene el método "Main", que es el punto de entrada del programa.


  4. 4. Dentro del método "Main", imprimimos un mensaje para que el usuario ingrese una palabra utilizando Console.WriteLine(). Luego, leemos la entrada del usuario con Console.ReadLine() y almacenamos el valor en la variable palabra.


  5. 5. A continuación, llamamos al método EsPalindromo() para determinar si la palabra ingresada es un palíndromo o no.


  6. 6. El método EsPalindromo() se define después del método "Main". Recibe una cadena (string) como entrada y devuelve un valor booleano (true si es un palíndromo, false si no lo es).


  7. 7. Dentro del método EsPalindromo(), convertimos la palabra a minúsculas usando ToLower() para asegurarnos de que la comparación sea insensible a mayúsculas y minúsculas.


  8. 8. Luego, utilizamos LINQ para eliminar los caracteres no alfanuméricos de la cadena. Where(c => Char.IsLetterOrDigit(c)) filtra solo los caracteres que son letras o dígitos y luego los convertimos nuevamente en una cadena usando new string().


  9. 9. Finalmente, comparamos la palabra original con su versión invertida utilizando la función Reverse() para invertir los caracteres y ToArray() para convertir el resultado en un arreglo de caracteres. Si ambas cadenas son iguales, entonces la palabra es un palíndromo y retornamos true; de lo contrario, retornamos false.

El programa luego imprime si la palabra ingresada es un palíndromo o no, dependiendo del valor devuelto por el método EsPalindromo().


Codigo del programa realizado:

 
using System;

namespace PalindromoChecker
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Ingrese una palabra: ");
            string palabra = Console.ReadLine();

            if (EsPalindromo(palabra))
            {
                Console.WriteLine("Es un palíndromo.");
            }
            else
            {
                Console.WriteLine("No es un palíndromo.");
            }
        }

        static bool EsPalindromo(string palabra)
        {
            // Convertir la palabra a minúsculas para comparar sin considerar mayúsculas
            palabra = palabra.ToLower();

            // Eliminar espacios en blanco y otros caracteres no alfanuméricos
            palabra = new string(palabra.ToCharArray().Where(c => Char.IsLetterOrDigit(c)).ToArray());

            // Comparar la palabra con su reverso
            return palabra == new string(palabra.ToCharArray().Reverse().ToArray());
        }
    }
}

El programa es útil para quienes deseen comprobar rápidamente si una palabra es un palíndromo sin tener que hacerlo manualmente. Además, puede servir como un ejemplo de cómo realizar esta tarea en un lenguaje de programación como C#. Los palíndromos son un concepto interesante en matemáticas y lógica, y este programa permite explorar y aprender sobre ellos de manera práctica.
Uso cookies para darte un mejor servicio.
Mi sitio web utiliza cookies para mejorar tu experiencia. Acepto Leer más