Описание тега double-precision

Anything related to double-precision floating-point arithmetic and data-types. Often used with reference to IEEE754 double-precision floating-point representation.
3 ответа

Значение Float и Double NaN (Not-a-Number)

Я читал JLS8 4.2.3 там я нашел концепцию Float NaN а также Double NaN, Когда я открыл исходный код Float а также Double класс, и попробовал следующий код: 1st condition: if (Float.NaN == Float.intBitsToFloat(0x7fc00000)) System.out.println("Both are…
23 мар '14 в 11:38
1 ответ

Почему проблемы точности в числе с плавающей запятой варьируются в зависимости от значений?

Мне было интересно, почему проблемы точности в числах с плавающей запятой различаются при разных значениях: #include <iostream> #include <iomanip> int main () { std::cout << std::setprecision(20); double d1(1.0); std::cout <<…
6 ответов

Плавать, чтобы удвоить назначение

Рассмотрим следующий фрагмент кода float num = 281.583f; int amount = (int) Math.round(num*100f); float rounded = amount/100.0f; double dblPrecision = rounded; double dblPrecision2 = num; System.out.println("num : " + num + " amount: " + amount + " …
3 ответа

Возможна потеря точности в два раза

int leccs1 = q1+q2+r1+swhw1; System.out.println("LecCS = "+ leccs1+ "/60"); int lecprelim = lcp+lcpo; System.out.println("LecPrelim = "+ lecprelim+ "/100"); double x = 0.50; int lecgrade = ((x * leccs1) + (x * lecprelim)); System.out.println("LecGra…
15 мар '14 в 09:11
2 ответа

Проблемы с двойной точностью при увеличении

У меня есть этот алгоритм, который вычисляет значение Мандельброта точки (x0,y0) (x0 и y0 находятся где-то между -1 и 1, я думал, что не очень важно). Все идет очень хорошо, когда scale не становится слишком большим, но при более высоких значениях s…
16 сен '12 в 19:15
4 ответа

Разве double не может представить любое число 2^n без проблем точности? п естественно

Этот код: double x = 2.0; for(int i = 1 ; i<1024 ; i+=i) { Console.WriteLine( String.Format( "2^{0} = {1:F0}", i, x ) ); x*=x; } Выходы: 2^1 = 2 2^2 = 4 2^4 = 16 2^8 = 256 2^16 = 65536 2^32 = 4294967296 2^64 = 18446744073709600000 2^128 = 3402823…
19 ноя '14 в 18:01
4 ответа

Есть ли точное приближение функции acos()?

Мне нужен acos() Функция с двойной точностью в вычислительном шейдере. Поскольку нет встроенной функции acos() в GLSL с двойной точностью я пытался реализовать свой. Сначала я реализовал ряд Тейлора, подобный уравнению из ряда Вики - Тейлора, с пред…
1 ответ

GCC Каково правильное ограничение встроенной сборки для работы с инструкциями ARM VFP?

Я хочу загрузить значение регистра двойной точности (d8) в переменную C на платформе ARM с помощью цепочки инструментов (gcc-4.6), которая поставляется с Google NDKv8b. Моя ARM-машина - Samsung Galaxy S2 (в ней есть VFPv3 и NEON). Документация GCC г…
4 ответа

Java DecimalFormat теряет точность при двойном форматировании

Когда я выполняю код ниже: public class Test { public static void main(String args[]){ DecimalFormat format = new DecimalFormat(); Double value = new Double(-1350825904190559999913623552.00); StringBuffer buffer = new StringBuffer(); FieldPosition p…
2 ответа

Неверные значения для двойного расчета

Я делаю простой расчет в VB.Net, следующий код. Dim total As String = "192.04" Dim paid As String = "200" Dim change As String = "7.96" '//This prints -7.99360577730113E-15 (Incorrect) MsgBox((CDbl(total) - CDbl(paid)) + CDbl(change)) Ответ, который…
24 авг '14 в 04:50
1 ответ

Matlab: потеря точности в расчетах. Возможно ли масштабирование переменных?

Сегодня я столкнулся с проблемой точности в Matlab: Tp = a./(3600*sqrt(g)*sqrt(K).*u.*Sd*sqrt(bB)) где а = 346751.503002533 г = 9.81 bB = 2000 Sd = 749.158805838953 848.621203222693 282.57250570754 1.69002068665559 529.068503515487 ты = 0.3085000000…
1 ответ

Java: как я могу преобразовать числа с двойной точностью в десятичное

Я хочу преобразовать числа двойной точности в десятичные. например, у меня есть 23,43, двойное значение будет (с использованием Matlab): 174 71 255 122 20 110 55 64 теперь, имея это, как я могу написать программу Java, которая дает мне 23,43? и вот …
24 май '12 в 08:03
7 ответов

Как определить, имеет ли двойная переменная целочисленное значение?

Я пытаюсь найти возможные целочисленные корни квадратного уравнения с Java. Вот фрагмент из моего кода: double sqrtDiscriminant = Math.sqrt(b * b - 4 * a * c); double root1 = ((-1.0 * b) - sqrtDiscriminant) / (2.0 * a); double root2 = ((-1.0 * b) + …
17 дек '12 в 15:01
2 ответа

Точность не работает или сбой devcpp в длинном двойном

Я использовал это: long double f =79228162514264337593543950336.0;//maximum ; 2 ^ 96 because f is 12 bytes cout.precision(30); cout<<f; Но некоторые цифры оказываются неверными. Зачем?
04 ноя '11 в 22:10
2 ответа

Проблема с java BigDecimal, хранящей значение мусора

BigDecimal b = new BigDecimal(0.05); System.out.println(b); Выход: 0.05000000000000000277555756156289135105907917022705078125 Как справиться с этим?
02 июл '14 в 19:54
2 ответа

Понимание DBL_MAX

Я просто прочитал о стандарте IEEE 754, чтобы понять, как реализованы числа с плавающей запятой одинарной и двойной точности. Поэтому я написал это, чтобы проверить мое понимание: #include <stdio.h> #include <float.h> int main() { double…
05 май '15 в 22:56
2 ответа

Компьютерная точность: когда мне следует об этом беспокоиться?

В программировании на C++, когда мне нужно беспокоиться о точности? Чтобы взять небольшой пример (хотя, возможно, он не идеален), std::vector<double> first (50000, 0.0); std::vector<double> second (first); Возможно ли, что second[619] = …
02 май '13 в 18:39
3 ответа

Наиболее эффективный алгоритм для поиска максимума значений двойной точности

Какой самый эффективный способ найти максимальное значение в наборе переменных? Я видел решения, такие как private double findMax(double... vals) { double max = Double.NEGATIVE_INFINITY; for (double d : vals) { if (d > max) max = d; } return max;…
3 ответа

Имеет ли JavaScript двойную точность чисел с плавающей точкой?

Я знаю, что это странный вопрос, но способен ли JavaScript работать с double, а не с одинарными числами? (64-разрядные числа с плавающей запятой против 32-разрядных.)
4 ответа

Новый BigDecimal(double) против нового BigDecimal(String)

Когда BigDecimal используется с вводом double а также BigDecimal с вводом String разные результаты, кажется, появляются. BigDecimal a = new BigDecimal(0.333333333); BigDecimal b = new BigDecimal(0.666666666); BigDecimal c = new BigDecimal("0.3333333…
14 апр '15 в 16:19