Articles of precisão

Manipulando e comparando pontos flutuantes em java

Em Java, a aritmética de ponto flutuante não é representada com precisão. Por exemplo, este código java: float a = 1.2; float b= 3.0; float c = a * b; if(c == 3.6){ System.out.println(“c is 3.6”); } else { System.out.println(“c is not 3.6″); } Imprime “c não é 3.6”. Eu não estou interessado em precisão […]

Precisão dupla – casas decimais

Pelo que li, um valor do tipo de dados double tem uma precisão aproximada de 15 casas decimais. No entanto, quando eu uso um número cuja representação decimal repete, como 1.0 / 7.0, acho que a variável contém o valor de 0,14285714285714285 – que é 17 lugares (através do depurador). Eu gostaria de saber por […]

Ajustando precisão decimal, .net

Essas linhas em c # decimal a = 2m; decimal b = 2.0m; decimal c = 2.00000000m; decimal d = 2.000000000000000000000000000m; Console.WriteLine(a); Console.WriteLine(b); Console.WriteLine(c); Console.WriteLine(d); Gera esta saída: 2 2.0 2.00000000 2.000000000000000000000000000 Então eu posso ver que criar uma variável decimal a partir de um literal me permite controlar a precisão. Posso ajustar a precisão […]

Como criar um timer de alta resolução no Linux para medir o desempenho do programa?

Eu estou tentando comparar GPU para desempenho da CPU. Para a GPU NVIDIA, tenho usado os tipos cudaEvent_t para obter um tempo muito preciso. Para a CPU, tenho usado o seguinte código: // Timers clock_t start, stop; float elapsedTime = 0; // Capture the start time start = clock(); // Do something here ……. // […]

Precisão do ponto flutuante de C ++

Duplicar Possível: Exemplos de imprecisão de ponto flutuante double a = 0.3; std::cout.precision(20); std::cout << a << std::endl; resultado: 0,2999999999999999889 double a, b; a = 0.3; b = 0; for (char i = 1; i <= 50; i++) { b = b + a; }; std::cout.precision(20); std::cout << b << std::endl; Resultado: 15.000000000000014211 Então, ‘a’ […]

Precedência do operador com o operador Ternary do Javascript

Eu não consigo envolver minha cabeça em torno da primeira parte deste código (+ =) em combinação com o operador ternário. h.className += h.className ? ‘ error’ : ‘error’ A maneira que eu acho que esse código funciona é a seguinte: h.className = h.className + h.className ? ‘ error’ : ‘error’ Mas isso não está […]

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 ) // […]

Precisão do C # DateTime.Now

Acabei de me deparar com algum comportamento inesperado com o DateTime.UtcNow enquanto fazia alguns testes de unidade. Parece que quando você chama DateTime.Now/UtcNow em sucessão rápida, parece dar-lhe de volta o mesmo valor para um intervalo de tempo maior que o esperado, em vez de capturar incrementos de milissegundos mais precisos. Eu sei que há […]

Controlando o número de dígitos decimais na saída de impressão em R

Existe uma opção em R para obter controle sobre a exibição de dígitos. Por exemplo: options(digits=10) é suposto dar os resultados do cálculo em 10 dígitos até o final da session. No arquivo de ajuda de R, a definição para o parâmetro digits é a seguinte: dígitos: controla o número de dígitos a serem impressos […]

A matemática de ponto flutuante é consistente em C #? Pode ser?

Não, isso não é outra pergunta “Por que é (1 / 3.0) * 3! = 1” . Eu tenho lido muito sobre os pontos flutuantes ultimamente; especificamente, como o mesmo cálculo pode fornecer resultados diferentes em diferentes arquiteturas ou configurações de otimização. Este é um problema para os videogames que armazenam replays, ou são peer-to-peer […]