Tecnología

Inicio

La función en C para palíndromos

La función en C para palíndromos


Palíndromos son frases o palabras que se leen de la misma manera hacia adelante y hacia atrás. Mientras que un ser humano puede simplemente leer la frase para determinar si es o no es un palíndromo, un programa de ordenador tiene que comprobar la frase inversa, y hacer comparaciones basadas en el valor de cada versión. A continuación, el programa puede decidir si es o no una frase es un palíndromo.

Plantilla Función palíndromo

Una función básica palíndromo comprobación podría tener una sentencia como argumento, y comprobar que la sentencia para ver si se lee de avance y retroceso:

bool palindromCheck (comprobación de cadena)

Esta función devuelve un valor booleano, es decir, que le proporcione un valor verdadero o falso en función de si o no la frase pasó la prueba palíndromo.

La inversión de la Frase

Dentro de la función, debe haber una manera de invertir la cadena. Un programador puede lograr esto mediante la lectura de la frase argumento a la inversa, y su almacenamiento en otra variable de cadena:

new_phrase cadena;

int i = (int) checking.length () - 1;

para (i; i> = 0; i--)

{

new_phrase.append (verificación [i]);

}

Aunque quizás no sea el método más eficiente, este bucle for muestra claramente lo que está sucediendo: los bucles se inicia al final de la frase "comprobación", y trabaja hacia atrás, añadiendo cada personaje para new_phrase.

Comprobación del palíndromo

C ++ operadores de cadenas incluyen los operadores de comparación (mayor que, menor que, igual a). Esto significa que las cadenas se pueden comparar muy parecido a los valores numéricos. Así que si el valor de la cadena introducida es "Radar", entonces el bucle se invertirá la palabra y lo almacena en la variable new_phrase. A continuación, una simple comparación entre las variables:

si (la comprobación new_phrase ==)

devolverá "true" (debido a que ambas variables de cadena contendrán la palabra "radar").

limitaciones

La comparación de cadenas sólo funciona en las cadenas que son idénticos. Si un palíndromo no es del todo igual adelante y atrás (como la frase "Haz gansos ver a Dios?"), Entonces la comparación fallará incluso a través de la frase es un palíndromo. El descubrimiento de nuevas palíndromos requiere el análisis y la comparación de frases carácter por carácter, en busca de patrones de palabras en la frase invertido en lugar de una comparación directa.