Documentation de Gambas - /lang/type/float

/lang/type/float

# Float

DIM Var AS Float

Ce type de donnée native 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 digits binaires, soit 16 digits 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étique en virgule flottante n’est pas détecté! Au lieu de cela, le résultat est mis à 1E+2147483647 respectivement -1E+2147483647

Si un tel nombre en dépassement de capacité est utilisé dans des expressions ultérieures, l’exécution stoppe et une fenêtre affiche "Mathematic error". Mais 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

- Types de données

- Single

- Fonctions Arithmétiques

- Fonctions trigonomètriques

- Fonctions logarithmiques et exponentielles