Chaîne caractere

bahich Messages postés 5 Statut Membre -  
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
ecrire un programme c qui fait entrer une chaïne de caractere ch1 et qui teste si c'est .
RAPPEL: un palindrome est un mot qui reste le même qu'on le liste de gauche a droite ou de droite a gauche.
et merci
A voir également:

6 réponses

Mastaking Messages postés 36 Statut Membre 14
 
Bonjour,

honnetement, je ne comprends rien a ce que tu demande ?
C'est quoi ton probleme, l'enoonce est tronque ou alors il consiste a verifier si une chaine de caracteres represente un palindrome ou non ?
Et dans quel langage de programmation travaille=tu ?

edit : je pense avoir compris. Tu veux realiser un programme en C (du moins une fonction) qui recoit en parametre une chaine de caractere et te dit si cette chaine de caractere est un palindrom ou non.
Faut que je ressorte mais vieux livre poussiereux de c mais c'est relativement simple.
0
bahich Messages postés 5 Statut Membre
 
je veux cherche la reponce de se exercice
0
bahich Messages postés 5 Statut Membre
 
ecrire un programme c qui fait entrer une chaïne de caractere ch1 et qui teste si c'est .
RAPPEL: un palindrome est un mot qui reste le même qu'on le liste de gauche a droite ou de droite a gauche.
ce langage on programme c
et merci
0
Mastaking Messages postés 36 Statut Membre 14
 
Oui mais ce que je voulais connaître c'est le contexte dans lequel tu écris ton programme, une application console ou pas, le code doit être dans une fonction ou tout simplement dans un main ?

bref dans tout les cas le code ne devrait pas trop différer de ceci (a toi de l'adapter en fonction de ce qu'il te faut ) :


#include <iostream.h>
#include <string.h>

main(){

//Tu cree un tableau de caractere de la longueur que tu veux +1 --> une des valeurs du tableau est utilisee (le "\0")
char chaine1[31];
int palindrome = 1; //0 = false et 1 = true

cout << "Entrez une chaine de caracteres";
cin >> chaine1;
//ou cin.getline(chaine, 31) mais dans le cas d'un mot ca ne nous interesse pas.

//on recupere la taille de la chaine de caractere rentree
int taille = strlen(chaine1);
char chaine2[31];
strcpy(chaine2, chaine1); //copie le contenue de chaine1 dans chaine2

//on initialise nos deux "pointeurs"
int x = taille-1;
int y = 0;

do {
//on parcours les deux tableaux dans des sens oppose et on verifie leur egalite
//ps: definition du palindrome
if(chaine1[x] != chaine2[y]){
palindrome = 0;
}
//on bouge nos "pointeurs"
x--;
y++;
} while(x != y);

if(palindrome == 0){
cout << "Il ne s'agit pas d'un palindrome";
}
else {
cout << "Il s'agit d'un palindrome";
}

return 0;
}
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Salut,
Ton programme, c'est du C++ et non du C ;-))).
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Salut,
Poste-nous ce que tu as fait qu'on puisse t'aider.
(Ici, on ne donne pas les solutions toutes faites car contraire à la charte).

Remarque : Le principe donné par Mastaking est correct. Mais, d'une c'est du C++ et non du C, et tu n'as pas besoin de passer par un tableau supplémentaire.

Voilà, tu devrais pouvoir t'en sortir ;-))).
Cdlt
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mastaking Messages postés 36 Statut Membre 14
 
Bonsoir,

je sais que je n'utilise pas forcement ce qu'il y a de plus basique pour ce code mais ca reste du C.
Et en effet mon code est loin d'etre optimise, il faut maintenant que tu l'adapte a ce qui te convient mais tu as la logique. (tu peux en effet faire varier x et y avec le meme tableau mais dans un reflexe de structure favorable au refactoring moi je prefere le faire en deux tableaux.....meme si c'est discutable)

pour un rappel sur le C ce site me semble pas mal :
http://www-ipst.u-strasbg.fr/pat/program/tpc.htm
0
fiddy Messages postés 11653 Date d'inscription   Statut Contributeur Dernière intervention   1 847
 
Tu me diras quel compilateur C accepte cout et cin..
Par contre j'en connais plein de compilateur C++ qui les acceptent.
0
jipicy Messages postés 41342 Statut Modérateur 4 896
 
0
Kharec Messages postés 4146 Date d'inscription   Statut Contributeur Dernière intervention   510
 
0