Palindromes sont des phrases ou des mots qui se lisent de la même façon avant et en arrière . Alors qu'un être humain ne peut tout simplement lire la phrase pour déterminer si oui ou non il est un palindrome, un programme d'ordinateur a besoin de vérifier la phrase inversée , et de faire des comparaisons sur la base de la valeur de chaque version. Ensuite, le programme peut décider si oui ou non une phrase est un palindrome. Palindrome Fonction Modèle
Un palindrome fonction de vérification de base peut prendre une phrase comme argument , et vérifier que la peine de voir s'il lit avant et arrière :
bool palindromCheck (vérification chaîne )
Cette fonction retourne une valeur booléenne , ce qui signifie qu'il va retourner une valeur vraie ou fausse basée sur si oui ou non la phrase a passé le test palindrome.
inversion de la phrase < br > Photos
Dans cette fonction, il doit y avoir un moyen d'inverser la chaîne. Un programmeur peut accomplir cela en lisant l'argument phrase à l'envers, et de le stocker dans une autre variable chaîne :
chaîne new_phrase ;
int i = (int) checking.length () - 1; Photos
pour ( i; i> = 0; i - ) {
new_phrase.append (vérification [i]) ; }
Photos
Alors peut-être pas la méthode la plus efficace, cette boucle for montre clairement ce qui se passe : les boucles commence à la fin de la phrase " de contrôle ", et fonctionne en arrière, ajoutant chaque personnage à new_phrase
< . br>
Vérification de la Palindrome
C + + opérateurs de chaîne comprennent les opérateurs de comparaison (supérieur , inférieur, égal à ) . Cela signifie que les chaînes peuvent être comparés peu comme des valeurs numériques. Donc, si la valeur de chaîne saisie est " radar ", puis la boucle inverser le mot et de le stocker dans la variable new_phrase . Ensuite, une simple comparaison entre les variables : .
If ( vérification == new_phrase )
retournera "true" ( parce que les deux variables de chaîne contiennent le mot "radar" )
Limitations
La comparaison de chaîne ne fonctionne que sur des chaînes qui sont identiques. Si un palindrome n'est pas tout à fait égale avant et arrière (comme la phrase " Ne oies voir Dieu ? " ) Alors la comparaison échoue même à travers la phrase est un palindrome. Découvrir d'autres palindromes nécessite l'analyse de phrases et de comparer caractère par caractère , la recherche de modèles de mots dans la phrase inversée plutôt que d'une comparaison directe.