Вопросы с тегом «floating-accuracy»

391
Насколько опасно сравнивать значения с плавающей запятой?

Я знаю, UIKitиспользует CGFloatиз-за разрешения независимой системы координат. Но каждый раз, когда я хочу проверить, например, frame.origin.xвызывает ли 0это у меня тошноту: if (theView.frame.origin.x == 0) { // do important operation } Не CGFloatуязвима к ложным срабатываниям при сравнении с ==,...

177
Что не так с использованием == для сравнения чисел в Java?

Согласно этой странице java.sun == является оператором сравнения равенства для чисел с плавающей точкой в ​​Java. Тем не менее, когда я набираю этот код: if(sectionID == currentSectionID) в мой редактор и запустив статический анализ, я получаю: «JAVA0078 значения с плавающей точкой по сравнению с...

158
Почему значение с плавающей точкой 4 * 0.1 выглядит хорошо в Python 3, а 3 * 0.1 - нет?

Я знаю, что большинство десятичных чисел не имеют точного представления с плавающей запятой (математика с плавающей запятой не работает? ). Но я не понимаю , почему 4*0.1печатается хорошо , как 0.4, но 3*0.1это не так , когда оба значения фактически имеют уродливые десятичные представления:...

131
Можно ли получить 0, вычитая два неравных числа с плавающей запятой?

Можно ли в следующем примере получить деление на 0 (или бесконечность)? public double calculation(double a, double b) { if (a == b) { return 0; } else { return 2 / (a - b); } } В обычных случаях, конечно, не будет. Но что, если aи bочень близки, может(a-b) быть 0связано с точностью расчета?...

93
Обрезать (не округлить) десятичные числа в javascript

Я пытаюсь усечь десятичные числа до десятичных знаков. Что-то вроде этого: 5.467 -> 5.46 985.943 -> 985.94 toFixed(2)делает примерно то, что нужно, но округляет значение. Мне не нужно округлять значение. Надеюсь, это возможно в javascript....

88
Какой ближайший к 1.0 двойник, а не 1.0?

Есть ли способ программно получить двойное значение, наиболее близкое к 1.0, но не на самом деле 1.0? Один из хакерских способов сделать это - преобразовать двойное число в целое число того же размера, а затем вычесть единицу. Как работают форматы с плавающей запятой IEEE754, это привело бы к...