Articles of flutuante

Lidando com problemas de precisão em números de ponto flutuante

Eu queria saber se existe uma maneira de superar um problema de precisão que parece ser o resultado da representação interna de números de ponto flutuante da minha máquina: Por uma questão de clareza, o problema é resumido como: // str is “4.600”; atof( str ) is 4.5999999999999996 double mw = atof( str ) // […]

Especificador de largura de impressão para manter a precisão do valor de ponto flutuante

Existe um especificador de largura de printf que pode ser aplicado a um especificador de ponto flutuante que formata automaticamente a saída para o número necessário de dígitos significativos, de modo que, ao varrer a seqüência de caracteres de volta, o valor de ponto flutuante original seja adquirido? Por exemplo, suponha que eu imprima um […]

Exemplos de imprecisão de ponto flutuante

Como você explica a imprecisão do ponto flutuante para novos programadores e leigos que ainda acham que os computadores são infinitamente sábios e precisos? Você tem um exemplo ou anedota favorito que parece transmitir a ideia muito melhor do que uma explicação precisa, mas seca? Como isso é ensinado nas aulas de informática?

A matemática do ponto flutuante está quebrada?

Considere o seguinte código: 0.1 + 0.2 == 0.3 -> false 0.1 + 0.2 -> 0.30000000000000004 Por que essas imprecisões acontecem?

Por que números de ponto flutuante são imprecisos?

Por que alguns números perdem a precisão quando armazenados como números de ponto flutuante? Por exemplo, o número decimal 9.2 pode ser expresso exatamente como uma razão de dois inteiros decimais ( 92/10 ), ambos podem ser expressos exatamente em binário ( 0b1011100/0b1010 ). No entanto, a mesma proporção armazenada como um número de ponto […]

Por que esses números não são iguais?

O código a seguir está obviamente errado. Qual é o problema? i <- 0.1 i <- i + 0.05 i ## [1] 0.15 if(i==0.15) cat("i equals 0.15") else cat("i does not equal 0.15") ## i does not equal 0.15