Home Hardware Networking Programmazione Software Domanda Sistemi
Conoscenza Informatica >> Programmazione >> C /C + + Programming >> .

Funzione in C per Palindromi

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

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

bool palindromCheck ( controllo stringa ) per

Questa funzione restituisce un valore booleano , il che significa che restituisca 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 :

new_phrase stringa ;

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

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

{

new_phrase.append ( controllo [ i] ) ; }


Anche se forse non è il metodo più efficiente , questo ciclo for mostra chiaramente ciò che sta accadendo : i loop inizia alla fine della frase " controllo " , e funziona al contrario , aggiungendo ogni personaggio per new_phrase
< . br>
Verifica il palindromo

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

If ( controllo == new_phrase ) per

restituisce "vero" ( perché entrambe le variabili stringa contiene la parola " radar" ) per

Limitazioni

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

 

Programmazione © www.354353.com