begin process at 2012 05 28 22:56:36
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Algorithme

 > 

Maths

 > 

Conversion Float -> Int


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Conversion Float -> Int

dimanche 23 décembre 2007 à 11:49:05 | Conversion Float -> Int

DroledeBx

Bonjour,

J'ai un problème de conversion entre un float et un entier.
Je récupère dans un fichier, sous le type float, une valeur décimale, trois chiffres après la virgule
(genre 0.253) que l'on appelle d.
Je voudrais récupérer juste les trois chiffres, sous la forme d'un entier.
J'ai fait :
(int) coef*d
avec coef=1000
mais on me ressort 252.

Après petite enquète, en fait, l'ordi considère 0.2529.. au lieu de 0.253, et donc via la conversion explicite, tronque la partie fractionnaire, et me garde que le 252. Est-ce possible de faire un arrondi supérieur ou un arrondi au plus près avant de faire la conversion explicite ?
Si oui, quelle fonction et quelle librairie à appeler?

Merci d'avance !
DroledeBx
dimanche 23 décembre 2007 à 12:32:41 | Re : Conversion Float -> Int

omnia

salut

je ne sais pas mais au pire tu fait une multiplication  du nombre par 10000 au lieu de 1000 et tu gères l'arondi toi même ^^

bye
dimanche 23 décembre 2007 à 14:01:04 | Re : Conversion Float -> Int

BruNews

Administrateur CodeS-SourceS
Il est bien entendu possible de faire tous les types d'arrondi que l'on veut mais ce serait ici totalement contre productif.

Tu recup ton float dans une chaine, tu pousses un pointeur jusque derrière le point, et tu fais direct une conversion sur des entiers.

exemple si tu as récupéré:
char buf[24], *c;
int n;
strcpy(buf, "0.253"); // SIMULE TA RECUP DEPUIS FICHIER
c = buf; // ON PLACE *c DERRIERE LE POINT
while(*c) {
  if(*c++ == '.') break;
}
n = atoi(c);

ciao...
BruNews, MVP VC++


Cette discussion est classée dans : int, conversion, entier, trois, float


Répondre à ce message

Sujets en rapport avec ce message

Warning de conversion [ par Nadaman ] Salut, Dans mon programme j'ai des conversion de float en int. Est-ce qu'il y a une manière pour éviter les warning. Si j'ai ces avertissement je doi conversion string -> entier [ par Sat83 ] Bonjour!J'ai un petit probleme, je debute en C++...J'aimerais savoir comment passer d'une chaine qui contient un entier a un entierje m'explique par e inserer un entier dans un tableau de int [ par clcat ] salut la compagnie j ai un ptit probleme(visual C++)j ai un tableau de string :   string TAB[10];et j ai un entier, p=3 par exemple la valeur de p n'e Conversion handle en char* ou int [ par unrealgun ] Bonjour,Je voudrais savoir comment convertir un type HWND en CHAR*.j'aimerais savoir s'il y a une fonction style itoa (pour conv. un int en char*) mai déclaration d'un pointeur sur un entier [ par iam_myst ] bonjour à tous j'aimerais savoir s'il est possbile de faire ceci:      int *tabcle = new int[56], *final = new int[48]; personellement ca me prov tableau d'entier. [ par gdpasmini ] Hello !j'ai un petit soucis avec une fonction qui renvoi un tableau en parametre... voila les details :Dans mes fonctions : int * boutonDecodFlux(void Pavé tournant [ par nisaloncaje ] Bonjour, je désirais pour commencer en OpenGL sous devc++ faire un programme simulant un pavé tournant autour de l'axe y : voici mon code source :#inc Construire tableau code binaire des caractères avec l'arbre de Huffman [ par lordvan ] Bonjour à tous, voilà, je suis en train d'essayer de faire une fonction de parcours d'arbre de huffman. Cette fonction a pour rôle de construire le co Tableau en parametre [ par tomalille ] Bonjour, j'ai un segmentation fault sur l'execution d'un programme. Le probleme vient d'une fonction ayant un tableau en parametre. Lorsque je veux a Clignotement de TBITMAP [ par websinh ] Bonjour à tous,Je suis un peu embêter avec une animation. En fait j'essaie de faire tourner un composants sur lui même en lui changeant son angle. Mal


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,499 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales