OVH Cloud OVH Cloud

changer la valeur d'un caractere

4 réponses
Avatar
Penguin_X
Salut. je voudrais changer la valeur d'un caractere. Mais je ne sais
comment.

exemple: bateau.

Je voudrais que mon programme examine chaque lettre de ce mot, et change
la veleur des lettres. Je pourrais crée un tableau avec la valeur de
chacunes des lettres. a=u , b=r, etc, etc ....

@+

penguin_x

4 réponses

Avatar
Fily
can you using the instraction IF
.:,

,
,


if (name_variable == 'a')
{
name_variabile=='u'
else if(.........)
.,

,
,
,
,

}


i think understand

my franch is very terrible

i hope so you understand...........

"Penguin_X" ha scritto nel messaggio
news:GKAhd.1006$
Salut. je voudrais changer la valeur d'un caractere. Mais je ne sais
comment.

exemple: bateau.

Je voudrais que mon programme examine chaque lettre de ce mot, et change
la veleur des lettres. Je pourrais crée un tableau avec la valeur de
chacunes des lettres. a=u , b=r, etc, etc ....

@+

penguin_x


Avatar
Fabien LE LEZ
On Mon, 01 Nov 2004 19:44:51 -0500, Penguin_X
:

Je voudrais que mon programme examine chaque lettre de ce mot, et change
la veleur des lettres.


void ChangeValeurLettre (char& c)
{
// Ceci est un exemple
if (c=='a') c= 'r';
}

int main()
{
std::string mot= "bateau";
std::for_each (mot.begin(), mot.end(), ChangeValeurLettre);
std::cout << mot << endl;
}


Autre solution :

class ChangeValeurLettre
{
public:
typedef std::map <char, char> Correspondances;
ChangeValeurLettre (Correspondances const& correspondances_)
: correspondances (correspondances_) {}
void operator () (char& c) const
{
Correspondances::const_iterator it= correspondances.find (c);
if (it != correspondances.end()) c= (*it).second;
}
private:
Correspondances correspondances;
};

int main()
{
ChangeValeurLettre::Correspondances correspondances;
// Ici, remplissage
corresp['a']= 'r'; // Un exemple

std::string mot= "bateau";
std::for_each (mot.begin(), mot.end(),
ChangeValeurLettre (correspondances));
std::cout << mot << endl;
}




--
;-)

Avatar
James Kanze
Penguin_X writes:

|> Salut. je voudrais changer la valeur d'un caractere. Mais je ne sais
|> comment.

|> exemple: bateau.

|> Je voudrais que mon programme examine chaque lettre de ce mot, et
|> change la veleur des lettres. Je pourrais crée un tableau avec la
|> valeur de chacunes des lettres. a=u , b=r, etc, etc ....

Voir std::transform. Avec un objet fonctionnel :

char operator()( char ch ) const
{
return table[ ch - CHAR_MIN ] ;
}

--
James Kanze
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Pierre Sémard, 78210 St.-Cyr-l'École, France +33 (0)1 30 23 00 34
Avatar
Penguin_X
Merci pour l'aide précieuse !