Articles of ponto flutuante de

Qual é a diferença entre o tipo de dados float e integer quando o tamanho é o mesmo?

Qual a diferença entre o tipo de dados float e integer quando o tamanho é o mesmo?

Por que a adição de 0,1 vezes múltiplas permanece sem perdas?

Eu sei que o número decimal 0.1 não pode ser representado exatamente com um número binário finito ( explicação ), então double n = 0.1 perderá alguma precisão e não será exatamente 0.1 . Por outro lado, 0.5 pode ser representado exatamente porque é 0.5 = 1/2 = 0.1b . Tendo dito que é compreensível […]

Como obter a parte decimal de um float?

Eu preciso extrair a parte decimal de um número flutuante, mas obtenho resultados estranhos: float n = 22.65f; // I want x = 0.65f, but… x = n % 1; // x = 0.6499996 x = n – Math.floor(n); // x = 0.6499996185302734 x = n – (int)n; // x = 0.6499996 Por que isso […]

Adicionando a Number.MAX_VALUE

A resposta a essa pergunta pode ser dolorosamente óbvia, mas não consigo encontrá-la nos documentos do Mozilla nem no Google a partir de uma pesquisa superficial. Se você tem algum código como este Number.MAX_VALUE + 1; // Infinity, right? Number.MIN_VALUE – 1; // -Infinity, right? Então, eu esperaria adicionar qualquer coisa ao Number.MAX_VALUE iria empurrá-lo […]

Imprimir números de ponto flutuante de x86-64 parece exigir que% rbp seja salvo

Quando eu escrevo um programa de linguagem assembly simples, vinculado à biblioteca C, usando o gcc 4.6.1 no Ubuntu, e tento imprimir um inteiro, ele funciona bem: .global main .text main: mov $format, %rdi mov $5, %rsi mov $0, %rax call printf ret format: .asciz “%10d\n” Isso imprime 5, conforme o esperado. Mas agora, se […]

por que f é colocado depois dos valores de float?

Eu não sei porque f ou F é colocado após os valores float em Java ou outras linguagens? por exemplo, float fVariable = 12.3f; quaisquer resources além de indicar que esse é um valor flutuante?

Erro de precisão com flutuadores em Java

Eu estou querendo saber qual é a melhor maneira de corrigir erros de precisão em Java. Como você pode ver no exemplo a seguir, há erros de precisão: class FloatTest { public static void main(String[] args) { Float number1 = 1.89f; for(int i = 11; i < 800; i*=2) { System.out.println("loop value: " + i); […]

Biblioteca de alta precisão de ponto flutuante Java

Quais bibliotecas para Java existem que possuem uma implementação rápida para operações de ponto flutuante ou de ponto fixo com uma precisão de vários milhares de dígitos? Como eles são de alto desempenho? Um requisito para mim é que ele implemente um algoritmo de multiplicação que seja melhor do que o algoritmo de multiplicação ingênuo […]

Como converter float para int com Java

Eu usei a seguinte linha para converter float para int, mas não é tão preciso quanto eu gostaria: float a=8.61f; int b; b=(int)a; O resultado é: 8 (deve ser 9 ) Quando a = -7.65f , o resultado é: -7 (deve ser -8 ) Qual é a melhor maneira de fazer isso?

Como pode um valor de flutuação primitivo ser -0,0? O que isso significa?

Por que um valor primitivo de float pode ser -0,0? O que isso significa? Posso cancelar esse recurso? Quando eu tenho: float fl; Então fl == -0.0 retorna true e fl == 0 . Mas quando imprimo, imprime -0.0 .