NO MOM
I CANT PAUSE.
Scientific Number Tools Documentación
Soporte
Explorar documentación

Números, precisión y errores

Elige la representación y trata los cálculos rechazados de forma explícita.

En esta página

Lee un Scientific Number

FScientificNumber(1.25, 3) representa 1250. Los valores finitos distintos de cero se normalizan a 1 <= abs(Base) < 10. El cero tiene base y exponente cero. El exponente es int64 y la mantisa tiene precisión double. Un rango amplio no proporciona aritmética de precisión arbitraria.

Comprueba el resultado

Usa Is Success o Get Error antes de almacenar un valor calculado. Las conversiones comprobadas y las operaciones Safe también devuelven éxito y error. Los errores se propagan por la aritmética en vez de convertirse silenciosamente en cero.

Cálculo Resultado esperado
2000 + 3000 5000
2000 × 3000 6000000
3000 / 3 1000
2 elevado a 10 1024
Raíz cuadrada de 144 12
2000 / 0 DivisionByZero
Texto numérico inválido ParseError

Usa conversiones comprobadas al pasar a float/double. Un número de gran rango válido puede desbordar el tipo de destino.

Idle Mode

Idle Mode rechaza negativos y valores no nulos inferiores a uno; no los limita automáticamente. El cero está permitido. Elige la política antes de usar el sistema numérico y reinicia tras cambiarla. Prueba -2, 0.25 y 0 con ambas políticas si tu juego depende de estos casos.

Arrays

Para [10, 20, 30, 40, 50], Sum Of Array, Average Of Array, Min Of Array y Max Of Array deben devolver 150, 30, 10 y 50. Inspecciona los errores en entradas vacías o inválidas en vez de asumir que todo array produce un agregado utilizable.

Conserva los valores autoritativos en representación normal o Safe. Usa Packed cuando sea adecuada una representación gráfica aproximada.