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

Числа с плавающей запятой представляют собой аппроксимацию действительных чисел, которые могут представлять большие диапазоны, чем целые числа, но используют тот же объем памяти за счет меньшей точности. Если ваш вопрос касается небольших арифметических ошибок (например, почему 0,2 + 0,1 равно 0,300000001?) Или десятичных ошибок преобразования, пожалуйста, прочитайте страницу информации, приведенную ниже, перед публикацией.

3
Почему NaN - NaN == 0.0 с компилятором Intel C ++?
Хорошо известно, что NaN распространяются в арифметике, но я не смог найти никаких демонстраций, поэтому я написал небольшой тест: #include <limits> #include <cstdio> int main(int argc, char* argv[]) { float qNaN = std::numeric_limits<float>::quiet_NaN(); float neg = -qNaN; float sub1 = 6.0f - qNaN; float sub2 = qNaN - 6.0f; float …
300 c++  c  floating-point  ieee-754  icc 


6
Почему изменение порядка сумм возвращает другой результат?
Почему изменение порядка сумм возвращает другой результат? 23.53 + 5.88 + 17.64 знак равно 47.05 23.53 + 17.64 + 5.88 знак равно 47.050000000000004 И Java, и JavaScript возвращают одинаковые результаты. Я понимаю, что из-за того, что числа с плавающей запятой представлены в двоичном виде, некоторые рациональные числа ( например, 1/3 …

19
Почему десятичные числа не могут быть представлены точно в двоичном виде?
В SO было опубликовано несколько вопросов о представлении с плавающей точкой. Например, десятичное число 0.1 не имеет точного двоичного представления, поэтому опасно использовать оператор == для сравнения его с другим числом с плавающей запятой. Я понимаю принципы, лежащие в основе представления с плавающей точкой. Что я не понимаю, так это …

2
Почему некоторые сравнения с плавающей запятой в четыре раза медленнее других?
При сравнении значений с плавающей точкой и целых чисел некоторым парам значений требуется гораздо больше времени для оценки, чем другим значениям схожей величины. Например: >>> import timeit >>> timeit.timeit("562949953420000.7 < 562949953421000") # run 1 million times 0.5387085462592742 Но если число с плавающей точкой или целое число становится меньше или больше …

3
Число с плавающей запятой и десятичное в ActiveRecord
Иногда типы данных Activerecord сбивают меня с толку. Часто Один из моих вечных вопросов, для данного случая, Я должен использовать :decimalили :float? Я часто сталкивался с этой ссылкой ActiveRecord:: decimal vs: float? , но ответы не совсем ясны, чтобы я был уверен: Я видел много потоков, в которых люди рекомендуют …



12
Каково обоснование для всех сравнений, возвращающих false для значений NaN IEEE754?
Почему сравнения значений NaN ведут себя иначе, чем все другие значения? То есть все сравнения с операторами ==, <=,> =, <,>, где одним или обоими значениями является NaN, возвращают false, что противоречит поведению всех других значений. Я предполагаю, что это каким-то образом упрощает численные вычисления, но я не смог найти …

12
Когда я должен использовать двойное вместо десятичного?
Я могу назвать три преимущества использования double(или float) вместо decimal: Использует меньше памяти. Быстрее, потому что математические операции с плавающей запятой изначально поддерживаются процессорами. Может представлять больший диапазон чисел. Но эти преимущества, по-видимому, применимы только к интенсивным вычислениям, таким как те, которые встречаются в программном обеспечении для моделирования. Конечно, двойные …

9
Когда я должен использовать ключевое слово strictfp в Java?
Я посмотрел, что это делает, но есть ли у кого-нибудь пример, когда вы будете использовать strictfpключевое слово в Java? Кто-нибудь на самом деле нашел применение для этого? Будут ли какие-либо побочные эффекты от того, что я просто добавлю это на все мои операции с плавающей запятой?

9
Какой тип данных MySQL следует использовать для широты / долготы с 8 знаками после запятой?
Я работаю с данными карты, и Latitude/Longitudeрасширяется до 8 десятичных знаков. Например: Latitude 40.71727401 Longitude -74.00898606 Я видел в документе Google, который использует: lat FLOAT( 10, 6 ) NOT NULL, lng FLOAT( 10, 6 ) NOT NULL однако их десятичные разряды идут только к 6. Должен ли я использовать FLOAT(10, …



22
Получить десятичную часть числа с помощью JavaScript
У меня есть числа с плавающей точкой, как 3.2и 1.6. Мне нужно разделить число на целое и десятичное число. Например, значение 3.2будет разделено на два числа, то есть 3и0.2 Получить целую часть легко: n = Math.floor(n); Но у меня проблемы с получением десятичной части. Я пробовал это: remainer = n …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.