Funzione in C per Palindromes

July 30

Funzione in C per Palindromes


Palindromi sono frasi o parole che leggono allo stesso modo in avanti e indietro. Mentre un essere umano può semplicemente leggere la frase per accertare se si tratta di un palindromo, un programma per computer deve controllare la frase invertita, e fare confronti in base al valore di ogni versione. Poi il programma può decidere o meno di una frase è un palindromo.

Palindrome Template Funzione

Una funzione di base palindromo controllo potrebbe richiedere una frase come argomento, e verificare quella frase per vedere se si legge avanti e indietro:

bool palindromCheck (controllo di stringa)

Questa funzione restituisce un valore booleano, il che significa che restituirà un valore vero o falso a seconda se o meno la frase ha superato il test palindromo.

Invertire la frase

All'interno della funzione, ci deve essere un modo per invertire la stringa. Un programmatore può realizzare questo leggendo la frase argomento in senso inverso, e riporlo in un'altra variabile stringa:

stringa new_phrase;

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

per (i, i> = 0; I--)

{

new_phrase.append (controllo [i]);

}

Anche se forse non è il metodo più efficiente, questo ciclo for mostra chiaramente che cosa sta accadendo: i loop inizia alla fine della frase "controllo", e funziona al contrario, aggiungendo ogni personaggio a new_phrase.

Controllo della Palindrome

C ++ operatori di stringa sono gli operatori di confronto (maggiore, minore, uguale a). Ciò significa che le stringhe possono essere confrontati tanto come valori numerici. Quindi, se il valore stringa inserita è "radar", allora il ciclo si inverte la parola e memorizzarlo nella variabile new_phrase. Poi un semplice confronto tra le variabili:

if (controllo new_phrase ==)

tornerà "vero" (perché entrambe le variabili stringa contiene la parola "radar").

limitazioni

Il confronto di stringhe funziona solo su stringhe che sono identici. Se un palindromo non è del tutto uguale avanti e indietro (come ad esempio la frase "Do oche vedere Dio?"), Allora il confronto avrà esito negativo anche attraverso la frase è un palindromo. Alla scoperta di ulteriori palindromi richiede l'analisi di frasi e confrontando carattere per carattere, alla ricerca di modelli di parole nella frase rovesciata piuttosto che un confronto diretto.