Tenho um arquivo CSV que tem um único valor: 40.233145454989 07 . Quando abro o arquivo CSV com o LibreOffice Calc, o valor aparece arredondado para 40.233145454989 1 . Aqui está uma captura de tela do LibreOffice Calc:
O que eu tentei : Fui em Ferramentas -> LibreOffice Calc -> Calcular . Então marquei " Limitar decimais para formato de número geral " e " precisão como mostrado ". Mas o programa continua arredondando o valor.
Aqui está uma captura de tela das configurações do meu LibreOffice Calc:
Minha pergunta : Como configuro o LibreOffice Calc para que ele não arredonde números? Em outras palavras, como faço para que o LibreOffice Calc exiba o número original 40.233145454989 07 em vez do número 40.233145454989 1
Você está atingindo o limite de precisão do formato numérico que o LibreOffice usa internamente para fins de exibição. Então, você não pode resolver isso: para o que quer que você queira fazer, o LibreOffice é a ferramenta errada. Ele não pode ser configurado para contornar isso – isso está realmente em seu núcleo computacional.
O que parece estar acontecendo é que internamente, o LibreOffice Calc usa ponto flutuante de 64 bits, e você pode testar isso:
=EXP(2, -149)
no campo A1, que está na ordem do menor número que floats de 32 bits podem representar.=A1/2
em A2, e=A796
=A796 * 2
=A863
emB863
, e em B862, insira=B863 * 2
, antes de puxar para cima. Agora, A1 e B1 diferem. Você descobriu que há números de ponto flutuante subnormais, e onde eles acontecem!Tendo verificado que internamente, 64 bits float são usados, mas ainda vemos apenas 21 dígitos decimais no máximo, podemos concluir que as rotinas de exibição de números do LibreOffice não aderem às regras de conversão IEEE754 de binário para decimal. (elas estão, francamente, terrivelmente quebradas.)
Um conselho geral: se a precisão de um número de ponto flutuante de 32 bits não for suficiente, então seu problema é difícil, e você provavelmente não deveria usar um software de planilha "de nível de consumidor".
Ou, na verdade, você está tentando armazenar mais precisão do que realmente tem; 15 a 16 dígitos significativos (decimais) são realmente muito. Qualquer experimento que produza mais do que essa quantidade de dígitos significativos pode ser impressionante. Ou você está simplesmente ignorando o fato da natureza (realmente é, não apenas uma mudança de palavras) de que toda medição é ruidosa, e está tentando manter os dígitos por aí como se fossem significativos, onde você deveria tê-los arredondado há muito tempo.
¹ veja https://help.libreoffice.org/latest/en-US/text/scalc/01/calculation_accuracy.html ; nessa fonte, o libreoffice diz que "assim como outros softwares de planilhas", o libreoffice usa floats IEEE754. O que eu acho surpreendente — software financeiro "adequado" usa ponto flutuante decimal codificado em binário para ser legalmente compatível. Isso não ajudaria você aqui — mesmo isso tem limites de precisão (ele pode armazenar a mesma quantidade de números com o mesmo número de bits; esses são apenas números diferentes).