|
|
|
|
Tu peux faire un truc du genre :
double x = 4.125 int partent = (int) x; // 4 double partdec = x - partent; // 0.1256 Pour compter le nombre de décimal tu peux feinter en écrivant la partie décimale dans une chaîne et compter le nombre de caractère : char buffer[255]; unsigned int nb_dec; sprintf(buffer,"%lf",partdec); nb_dec=strlen(buffer)-2; // ou truc dans le genre, le -2 sert à zapper le '0.' Bonne chance |
tu peux utiliser pour extraire la partie entière la fonction floor qui se trouve dans la bibliothèque math.h, elle reçoit le double et retourne sa partie entière.
bonne chance! |
Tu peux convertir ton nombre en chaine de carateres et utiliser les fonctions sur les chaines de caracteres. Par exemple tu peux utiliser strsep. Qui coupera ta chaine en deux chaines. Apres tu reconvertis tes 2 chaines en entiers si tu veux que ce soit des numériques.
Tu trouveras une liste de fonctions ici : http://www.linux-kheops.com/doc/man/manfr/man-html-0.9/man3/string.3.html Bonne continuation. |
#include <math.h>
float a = 1.5; // partie entière int o = floor(a); // partie décimale float u = a-o; voili voilou |
Résultats pour [C] Extraire partie entière et partie décimal
Résultats pour [C] Extraire partie entière et partie décimal
Résultats pour [C] Extraire partie entière et partie décimal
Résultats pour [C] Extraire partie entière et partie décimal
Résultats pour [C] Extraire partie entière et partie décimal