convertir un float en 2 int ?
Bonjours,
j'aimerais convertir un float en 2 int, j'ai essayer d'utiliser les cast ... la ce code marche pour uniquement 2 chiffre apres la virgule ... et encore sa depend des architecture ... merci de votre aide !
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
#include <unistd.h>
#include "fct.h"
void floats(double f)
{
int nbe;
double test;
int nbv;
int k;
nbe = (int)f;
my_put_nbr(nbe);
write(1, ".", 1);
test = f - (double)nbe;
k = compt(test);
while (k != 0)
{
test = test * 10;
k--;
}
nbv = (int)test;
nbv++;
my_put_nbr(nbv);
}
int compt(double n)
{
int i;
i = 0;
while (n < 10)
{
n = n * 10;
i++;
}
return (i);
} |