Problème de concaténation ( débutant :p )

t0ine Messages postés 36 Date d'inscription mardi 29 mars 2005 Statut Membre Dernière intervention 24 décembre 2009 - 6 oct. 2005 à 23:06
Hylvenir Messages postés 364 Date d'inscription mercredi 11 février 2004 Statut Membre Dernière intervention 5 octobre 2006 - 7 oct. 2005 à 22:42
Voila je voudrais concaténer des chars ==> voir plus bas . J'aimerais qu'au palindromeD se rajoute tout ce k'il y a dans la PalindromM , etc ....
Si quelqu'un pouvait m'aider ....
La définition des variables char peut être changée , je ne m y connait pas beaucoup ...

#include "stdafx.h"
#include
#include <string.h>// Permet d'intégrer la fonction strlen


char palin[15];
int i,j,test,test2,nblettre;
char palindromeM,palindromeF,palindromeD;


void Palindromeverif();// Annonce la fontion


int main(int argc, char* argv[])
{



cout<< "**********************************************************"<<"\n";
cout<< "Veuillez rentrer une chaine de caractère sans espace svp ."<<"\n";
cout<< "**********************************************************"<<"\n";
cin>>palin;
nblettre=strlen(palin);// Retient le nombre de lettre que contient la chaine de caractère .
cout<<"**********************************************************"<<"\n";
cout<<"Palindrome dans "<< palin<<" ? "<<"\n";
cout<<"**********************************************************"<<"\n";


/////////////////////////
if (nblettre <= 2)//Vérifie si le nombre de lettre est inférieure à 1.
{
cout<<"Chaine trop courte pour être un palindrome"<<"\n";
}
else

Palindromeverif();// lance la fonction
return 0;
}


void Palindromeverif()// fonction
{
j=1;
i=1;
test = 1;
test2 = 1;
while (j<=nblettre)
{
test = i - test ;
test2 = i + test2;
if (palin[test] == palin[test2] )
{
palindromeM = palin[i];

while (palin[test] == palin[test2] )
{
// PROBLEMEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
palindromeD = palin[test];
palindromeD =palindromD + palindromeM;
palindromeF = palin[test2];
palindromeM += PalindromeD + palindromeF;
test--;
test2++;
}
cout<
}
j++;
i++;
test = 1;
test2 = 1;
}

return;
}

3 réponses

ashboody Messages postés 91 Date d'inscription samedi 30 mars 2002 Statut Membre Dernière intervention 11 octobre 2005
6 oct. 2005 à 23:56
salu, je dis pas que c'est mal de faire du C++ mais faudrait déja apprendre les bases du C ... une fonction int main ne doit pas retourner (return;) déja,
ensuite pour tes chaines a concatener utilise sprintf ou strcat ... ensuite a la place de cin cout apprends déja a utiliser scanf. En gros découvre la librairie <stdio.h> bonne suite...
0
t0ine Messages postés 36 Date d'inscription mardi 29 mars 2005 Statut Membre Dernière intervention 24 décembre 2009
6 oct. 2005 à 23:58
Bah c'est pas pour rien que je dis que je débute , chacun ses langages et la je patauge . et le strcat je le comprend pas :s Puis scanf ou cout c le meme non ?
0
Hylvenir Messages postés 364 Date d'inscription mercredi 11 février 2004 Statut Membre Dernière intervention 5 octobre 2006 2
7 oct. 2005 à 22:42
Salut,

pour faire simple,

tu devrais un tuto qui ne mélange pas le C++ et le C.

Et si tu vois #include dans un bouquin brûle le.

(il faut #include )



Pour débuter, c'est plus facile d'utiliser les std::string au lieu des char[] du C.

La concaténation se fait par un simple +

string chaine = "Bonjour";

string chaine2 = " le monde";

string chaine3 = chaine + chaine2;


Ma participation à la saturation du net:
http://hylvenir.free.fr
0
Rejoignez-nous