En programación de computadoras, a menudo se supone que el tipo de datos de doble precisión tiene una precisión aproximada de 15 decimales. Sin embargo, ciertas representaciones numéricas, como 1,0/7,0, parecen tener más precisión cuando se representan internamente dentro de la variable. Este artículo explorará por qué ocurre esto y por qué la precisión a menudo se describe como alrededor de 15 decimales.
Un doble IEEE tiene 53 bits significativos, lo que equivale aproximadamente a 15,95 dígitos decimales. Para tener en cuenta el redondeo, la implementación establece la precisión (DBL_DIG) en 15. Esto proporciona casi un dígito decimal adicional de precisión más allá de lo que implica DBL_DIG.
Al mostrar un doble, los compiladores generalmente redondean el valor según la precisión. Por ejemplo, 1.0/7.0, cuando se muestra con "%.17g", tiene una precisión de 17 dígitos. Sin embargo, si se utiliza "%.64g", no aparecen dígitos significativos más allá de la precisión esperada de 15 dígitos.
Los números de doble precisión tienen una representación interna que permite alrededor de 15,95 dígitos decimales de precisión. Sin embargo, debido al redondeo, la precisión mostrada normalmente se establece en 15 decimales. Esta explicación ayuda a aclarar por qué ciertos números exactos, como 1.0/7.0, parecen tener más precisión internamente pero aun así se ajustan a la precisión estimada de 15 dígitos cuando se muestran.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3