Originariamente inviato da andrea_NET-_DSL
ecco cosi' ho risolto il fatto della non corretta esecuzione di quella funzione più volte nello stesso programma
codice:
int palindroma(char *parola){
static int i=1;
static int j=0;

//controllo che la stringa passata non sia nulla
if(parola == NULL) return 0;

//condizione di uscita della ricorsione
if(i == strlen(parola)) {int i=j=1; return 1;}


if(parola[j] == parola[strlen(parola)-i] ){
++i;
++j;
return palindroma(++parola);
}

}
Quell'int non serve, se no dichiari una variabile locale all'interno di quell'if, e non modifichi il valore della variabile statica

Comunque ancora non funziona
Se lo eseguo, sia che gli passi "ciao", sia che gli passi "anna" mi rende sempre 0 :master:


Scusa, ti sto facendo impazzire