Float
DIM Var AS Float
Este tipo de dato nativo representa un número real (coma flotante) equivalente al double de C, es decir, de 8 bytes de longitud.
El rango de valores está entre -8,98846567431105E+307 y +8,98846567431105E+307
La precision del Float esde 52 digitos binarios, lo que se traduce el 16 digitos decimales (2^-52).
Esto significa: si añadimos un numero 1.0 (positivo) el cual es menor a 2E-16 este debera resultar exactamente 1.0
Examples
PUBLIC x AS Float
PUBLIC SUB ButFloat_Click()
DIM y AS Float
x = Sin(0.32)
y = x - (0.32 - 0.32 ^ 3 / (2 * 3))
END
0.314566560616 2.789394945107E-5
El desbordamiento durante operaciones aritmeticas con Float no es detectado!
En cambio, el resultado es ajustado a
1E +2147483647 resp/-1E +2147483647 /
Si ese número desbordado es utilizado en futuras expresiones, a continuación, la ejecución se detiene y muestra una ventana de mensaje "error de matemáticas". Pero el valor de un Float se puede comparar contra maxfloat o minfloat.
Examples
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
Véase también