Pages: [1]   Go Down
Author Topic: Syntaxe decimale formule  (Read 479 times)
0 Members and 1 Guest are viewing this topic.
0
Offline Offline
Full Member
***
Karma: 0
Posts: 207
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Bonjour !

prenons la ligne suivante :

data = (mesure*102)/12;

est il préférable de l'écrire comme cela ? et si oui pourquoi ?

data = (mesure*102.0)/12.0;

je vous pose cette question car sur des exemples que je vois sur le net ils mettent le .0 derrière un entier.

Faut il le faire et pourquoi ?

Merci !
Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 21
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

le .0 force le calcul à se faire avec des floats (voire des double, à vérifier). C'est donc plus précis, et sûrement beaucoup moins rapide. Ca peut aussi éviter d'aboutir à des résultats trop grands qui ne vont pas tenir sur un entier, ce qui au final te donnera une valeur totalement erronée !

Si "data" est un entier, le résultat du calcul en flottants sera converti comme il faut.

Bref, ça dépend des cas.
Logged

0
Offline Offline
Full Member
***
Karma: 0
Posts: 207
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

data et mesure sont des floats

Que dois je faire alors ?

Merci !
« Last Edit: March 27, 2010, 02:23:15 pm by KiliYaBB » Logged

0
Offline Offline
Newbie
*
Karma: 0
Posts: 4
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Si data et mesure sont des float, il vaut mieux utiliser les ".0" pour eviter une conversion entier->float de ces constantes.
D'ailleurs, point de vue programmation c'est moyen de laisser des constantes trainer au milieu du programme : preferez les define ou declarez des constantes par ailleurs.
Cordialement
Emmanuel
Logged

Pages: [1]   Go Up
Jump to: