CONVERTIR (CHAINE -> NOMBRE) ET (NOMBRE -> CHAINE) [DEV-C++]

Signaler
Messages postés
129
Date d'inscription
dimanche 9 décembre 2001
Statut
Membre
Dernière intervention
12 janvier 2009
-
Messages postés
18
Date d'inscription
jeudi 7 août 2003
Statut
Membre
Dernière intervention
13 août 2003
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/9575-convertir-chaine-nombre-et-nombre-chaine-dev-c

Messages postés
18
Date d'inscription
jeudi 7 août 2003
Statut
Membre
Dernière intervention
13 août 2003

Voila une solution tres bien pour recuperer chaque digit d'un nombre

void display_nb(int nb)
{
char c;
if(nb < 0)
{
write(1,'-',1);
nb = -nb;
}
if(nb > 10)
display_nb(nb/10);
c = nb%10 + '0';
write(1,&c,1); // peut etre remplacer parce que l'on veut fichier,memoire etc
}
Messages postés
8
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
23 mai 2003

Tiens, j'oubliais, un truc pour passer d'un entier à un char:

int num=3; // c'est un exemple
char monchar;

monchar = num + '0';

L'astuce, on ajoute à notre entier la valeur du code ASCII du chiffre 0.
Notre char se voit donc attribuer la valeur ASCII du caractère 3;
Messages postés
8
Date d'inscription
jeudi 22 mai 2003
Statut
Membre
Dernière intervention
23 mai 2003

Bon, pour garder la partie entière d'un nombre après une division, il y a plus simple. Bon, Le % fonctionne très bien et c'est à priori le mieux pour ce que tu fais. Sinon, il y a les fonctions floor et ceil (je sais plus quelle librairie il faut utiliser) qui renvoient un entier, soit directement inférieur, soit directement supérieur. Le transtypage fonctionne aussi, cad que tu veux que le résultat soit un entier eg:
result = (int)(nombre/10);
Sinon, je connaissais pas cgvt, je vais essayertiens pour voir, p't'être amusant!
Messages postés
88
Date d'inscription
jeudi 23 mai 2002
Statut
Membre
Dernière intervention
27 mars 2006

pe t etre interessant mais ca ne sert a rien
Afficher les 8 commentaires