sdiri_med
Messages postés18Date d'inscriptionlundi 17 juillet 2006StatutMembreDernière intervention31 octobre 2010
-
31 mars 2009 à 20:30
sdiri_med
Messages postés18Date d'inscriptionlundi 17 juillet 2006StatutMembreDernière intervention31 octobre 2010
-
11 juil. 2009 à 08:03
Salut
Je n’ai pas arrivé à résoudre un problème de vérification d'une chaine de caractères. Le
problème consiste à vérifier si un mot est palindrome ou non sans
l’utilisation de la <string.h>
J’ai tapé le code pas mal de fois mais sa marche pas avec moi pourriez vous m'aidez svp
exemple d'un mot palindrome : laval tjr ch[i] = = ch[j]
voila code:
#include<stdio.h>
int main ()
{
char N, ch[30];
int i, k, j, p, m;
printf("tapez une chaine de caractères 'caractère par caractère '"
"tapez N pour terminer:\n");
j = 0;for(i 0; ch[i] 'N' || i <= 30; i++)
{
scanf ("%c", &ch[i]);
i = j;
}
i = 0;
k = j;
m = 3;
if(j % 2 == 0)
{for(i 0, j k; i <= (k / 2) || j > (k / 2); i++, j--)
{
if(ch[i] == ch[j])
{
m = 1;
}
else
{
m = 0;
}
}
}
else
{for(i 0, j k;
i <= (k / 2) || (j > ((k / 2) + 1))/* -, +; */ ; i++, j--)
{
if(ch[i] == ch[j])
{
m = 1;
}
else
{
m = 0;
}
}
}
if(m = 1)
{
printf ("la chaine est palindrome \n");
}
else
{
printf (" \n la chaine n'est pas palindrome");
}
return(0);
}
sdiri_med
Messages postés18Date d'inscriptionlundi 17 juillet 2006StatutMembreDernière intervention31 octobre 2010 11 juil. 2009 à 08:03
bonjour voila un autre code "amélioré un peux mais sa donne pas résultats souhaiter de lui "
#include<stdio.h>
#include<conio.h>
int main()
{ int n;
char ch[n];
int i,m,k,p,j;
m=1;
puts("donne une chaine de caractaire\n");
gets(ch);
printf("la chaine tape est :%s\n",ch);
for (j=0;ch[j];j++) //compte le nb de caracteres "comme laal"
;
printf("\nnombres de caractéres est:%d",j);
p= j%2;
k=j/2;
if (p==0) // le cas d'un mot don les caracteres multiple de 2
{
for(i=1;i==k,j==k+1;i++,j--)
{
if(ch[j]==ch[i] )
{
m=0;
}
else
{
break;
puts("le chainne ne pas palendrome");
}
}
}
else
{
for(i=1;i==k,j==k+2;i++,j--) // le cas le de caracteres d'un mot impaire "comme laval"
{
if(ch[j]==ch[i])
{
m=0;
}
else
{
break;
puts("le chainne ne pas palendrome");
}
}
}
if(m==0){ printf("lachaine est palindrome",j);}
getch();
return(0);
}