Na programação de computadores, o tipo de dados de precisão dupla é frequentemente assumido como tendo uma precisão aproximada de 15 casas decimais. No entanto, certas representações numéricas, como 1,0/7,0, parecem ter mais precisão quando representadas internamente na variável. Este artigo explorará por que isso ocorre e por que a precisão é frequentemente descrita como em torno de 15 casas decimais.
Um duplo IEEE tem 53 bits significativos, equivalendo aproximadamente a 15,95 dígitos decimais. Para levar em conta o arredondamento, a implementação define a precisão (DBL_DIG) como 15. Isso fornece quase um dígito decimal extra de precisão além do que está implícito em DBL_DIG.
Ao exibir um duplo, os compiladores geralmente arredondam o valor com base na precisão. Por exemplo, 1,0/7,0, quando exibido com "%.17g", tem precisão de 17 dígitos. No entanto, se "%.64g" for usado, nenhum dígito significativo aparecerá além da precisão esperada de 15 dígitos.
Números de precisão dupla têm uma representação interna que permite cerca de 15,95 dígitos decimais de precisão. No entanto, devido ao arredondamento, a precisão exibida normalmente é definida como 15 casas decimais. Esta explicação ajuda a esclarecer por que certos números exatos, como 1,0/7,0, parecem ter mais precisão internamente, mas ainda estão em conformidade com a precisão estimada de 15 dígitos quando exibidos.
Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.
Copyright© 2022 湘ICP备2022001581号-3