Palindrome

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 985 fois - Téléchargée 30 fois

Contenu du snippet

en langege c
c est un palindrome comme LAVAL
RADAR

Source / Exemple :


#include <stdio.h>
main()
{
 /* Déclarations */
 char CH[101]; /* chaîne donnée    */
 int I,J;      /* indices courants */
 int PALI;     /* indicateur logique:          */ 
               /* vrai si CH est un palindrome */
 
  /* Saisie des données */
 printf("Entrez une ligne de texte (max.100 caractères) :\\n");
 gets(CH);
 /* Placer J sur la dernière lettre de la chaîne */
 for(J=0; CH[J]; J++)
     ;
 J--;
 /* Contrôler si CH est un palindrome */
 PALI=1;
 for (I=0 ; PALI && I<J ; I++,J--)
      if (CH[I] != CH[J])
          PALI=0;
 
  /* Affichage du résultat */
 if (PALI)
    printf("La chaîne \\"%s\\" est un palindrome.\\n", CH);
 else
    printf("La chaîne \\"%s\\" n'est pas un palindrome.\\n", CH);
 return 0;
}

b) en utilisant des pointeurs au lieu des indices numériques :

#include <stdio.h>
main()
{
 /* Déclarations */
 char CH[101];  /* chaîne donnée    */
 char *P1,*P2;  /* pointeurs d'aide */
  int PALI;  /* indicateur logique:          */
            /* vrai si CH est un palindrome */
 
  /* Saisie des données */
 printf("Entrez une ligne de texte (max.100 caractères) :\\n");
 gets(CH);
 /* Placer P2 sur la dernière lettre de la chaîne */
 for (P2=CH; *P2; P2++)
      ;
 P2--;
 /* Contrôler si CH est un palindrome */
 PALI=1;
 for (P1=CH ; PALI && P1<P2 ; P1++,P2--)
      if (*P1 != *P2) PALI=0;
  /* Affichage du résultat */
 if (PALI)
    printf("La chaîne \\"%s\\" est un palindrome.\\n", CH);
 else
    printf("La chaîne \\"%s\\" n'est pas un palindrome.\\n", CH);
 return 0;
}

A voir également

Ajouter un commentaire Commentaires
Messages postés
11
Date d'inscription
mardi 6 décembre 2005
Statut
Membre
Dernière intervention
26 juin 2012

Esope reste et se repose
Esope reste ici et se repose
sont deux palindromes
Messages postés
1787
Date d'inscription
lundi 22 novembre 2004
Statut
Membre
Dernière intervention
31 janvier 2009
2
http://www.ltam.lu/Tutoriel_Ansi_C/homesol.htm

Souvenir Souvenirrrrrrrrr :)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.