Esercizio stringhe palindrome

di il
1 risposte

Esercizio stringhe palindrome

Salve mi hanno assegnato questo esercizio. Direse una frase è formata da tutte parola palindrome esempio non oso sms pop.
Questa frase seppur senza senso lo è.
Ho creato una funzione che dice se una parola singola è palindroma
int palindroma(char s[])
{
    int i=0;
    int j=strlen(s)-1;
    while(i<j)
    {
        if(s[i]!=s[j])
            return 0;
        i++;
        j--;
    }
    return 1;
}
Ora la vorrei applicare all'intera frase ma non ci riesco. Qui il mio tentativo
bool tutta(char s[])
{
    int i=0;
    int k=0;
    char t[1000];

    while(s[i]!='\0')
    {
        while(s[i]!=' ')
        {
            t[k]=s[i];
            i++;
            k++;
        }
        t[k]='\0';
        cout<<i<<endl;

         if(!palindroma(t))
            return false;

        if(s[i]==' ')
        {
            k=0;
            i++;
        }

    }

    return true;
}
dove sbaglio?

1 Risposte

  • Re: Esercizio stringhe palindrome

    Il secondo while non si arresta se non trova uno spazio. Mettici anche un controllo sul fine stringa.
Devi accedere o registrarti per scrivere nel forum
1 risposte