Float
DIM Var AS Float
Ce type de donnée natif représente une valeur en virgule flottante double précision, c.a.d. une valeur en virgule flottante sur huit octets.
La valeur d’un Float est un nombre entre -8.98846567431105E+307 et +8.98846567431105E+307.
La précision d’un Float est de 52 chiffres binaires, soit 16 chiffres décimaux (2^-52).
Ce qui signifie : si on ajoute 1.0 à un nombre (positif) plus petit que 2E-16, alors le résultat sera exactement 1.0.
Exemples
DIM x AS Float = Sin(0.32)
DIM y AS Float = x - (0.32 - 0.32 ^ 3 / (2 * 3))
PRINT x;;y
0.314566560616 2.789394945107E-5
Le dépassement de capacité pendant les opérations arithmétiques en virgule flottante n’est pas détecté !
Au lieu de cela, le résultat est mis à
1E+2147483647 ou
-1E+2147483647 selon le type de dépassement.
Si un tel nombre en dépassement de capacité est utilisé dans des expressions ultérieures, l’exécution s'arrête et une fenêtre affiche "Mathematic error". La valeur d’un Float peut être comparée à maxfloat ou minfloat.
Exemples
CONST maxfloat AS Float = +8.98846567431105E+307
CONST minfloat AS Float = -8.98846567431105E+307
...
IF y > maxfloat OR y < minfloat THEN
PRINT "Float y overflow"
ELSE
x = y / 23000
ENDIF
Voir aussi