Ho iniziato a studiare il ciclo for e gli array e dopo aver visto la parte teorica(abbastanza semplice) mi son messo a cercare esercizi e ho inziato con quello che chiede una parola o una frase e controlla se questa è palindroma. Concettualmente ho sviluppato l'algoritmo ma non son riuscito a tradurlo in c++: Dunque ho trovato questo codice in rete che permette questo l'unico problema è che non riesco a capirne il funzionamento.Potreste aiutarmi per favore ad analizzarlo e capirlo.Grazie in anticipo. Coomento il codice che non ho capito.
#include <cstdlib>
#include <iostream>
using namespace std;
int main()
char A[20];
int i=0, cont=0;
cout<<"Immetti una frase per verificare se e' palindroma\n";
cin>>A;
while(A[cont]!='\0') //Non mi è chiaro cosa fà questo ciclo
{
cont++;
}
while(i<cont&&A[i]==A[(cont-1)-i])]
{
i++; //Qui non capisco proprio come individua che la parola è palindroma
}
if(i==cont)
cout<<"La frase e' palindroma\n";
else
cout<<"La frase non e' palindroma\n";
system("pause");
return 0;
}