J'essaie de déterminer si une phrase est un palindrome (un mot qui est le même de gauche à droite) ou non mais je ne peux pas le faire fonctionner. Quel est le problème ?, je ne peux pas utiliser des pointeurs ou des variables de type récursion ou chaînePalindrome en C sans pointeurs et récursion
#include <stdio.h>
#include <string.h>
int main()
{
int i,j = 0,length;
char space = ' ';
char phrase [80],phrase2[80],phrase3[80];
printf("Give me the phrase: ");
gets(phrase);
length = strlen(phrase);
for(i =0; i <= length - 1; i++)
{
if(phrase[i] != space) //Makes the phrase without spaces
{
phrase2[i] = phrase[i];
j++;
}
}
for(i = length -1; i >= 0;i--)
{
if(phrase[i] != space) //Makes the phrase backwards an without spaces
{
phrase3[j] = phrase[i];
j++;
}
}
length = strlen(phrase2);
for(i =0; i <= length -1;i++) //Compare the phrases to know if they are the same
{
if(phrase2[i] != phrase3[i])
{
printf("It's not a palindrome\n");
return 0;
}
}
printf("It's a palindrome\n");
return 0;
}
Tout message d'erreur? Quelle est votre entrée et sortie d'échantillon? – BoltClock
vous devez réinitialiser j – Anycorn
Je reçois toujours le message "Ce n'est pas un palindrome", Un exemple de ma contribution serait jamais impair ou même. La phrase2 est supposée obtenir neveroddoreven et la phrase3 le mot en arrière sans les espaces qui sont les mêmes neveroddoreven – Enrique