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

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

7
Предупреждение C ++: деление двойного на ноль
Случай 1: #include <iostream> int main() { double d = 15.50; std::cout<<(d/0.0)<<std::endl; } Компилируется без предупреждений и выводов inf. Хорошо, C ++ может обрабатывать деление на ноль ( посмотреть вживую ). Но, Случай 2: #include <iostream> int main() { double d = 15.50; std::cout<<(d/0)<<std::endl; } Компилятор выдает следующее предупреждение ( …

5
В чем разница между жесткими и мягкими числами с плавающей запятой?
Когда я компилирую код C с помощью своей кросс-инструментальной цепочки, компоновщик распечатывает страницы с предупреждениями о том, что мой исполняемый файл использует жесткие числа с плавающей запятой, а моя библиотека libc использует мягкие числа с плавающей запятой. Какая разница?
98 c  linux  floating-point  arm  libc 

10
Преобразуйте float в double без потери точности
У меня есть примитивный поплавок и мне нужен как примитив-двойник. Простое преобразование float в double дает мне странную дополнительную точность. Например: float temp = 14009.35F; System.out.println(Float.toString(temp)); // Prints 14009.35 System.out.println(Double.toString((double)temp)); // Prints 14009.349609375 Однако, если вместо приведения я выведу число с плавающей запятой как строку и проанализирую строку как двойную, …

8
Генерируют ли какие-либо JIT-компиляторы JVM код, использующий векторизованные инструкции с плавающей запятой?
Скажем, узким местом моей Java-программы на самом деле являются узкие циклы для вычисления множества векторных точечных произведений. Да, я профилировал, да, это узкое место, да, это важно, да, именно такой алгоритм, да, я запустил Proguard для оптимизации байтового кода и т. Д. По сути, работа - это точечные произведения. Например, …

6
Сколько двойных чисел между 0,0 и 1,0?
Это то, о чем я думал в течение многих лет, но я никогда не находил времени, чтобы спросить раньше. Многие (псевдо) генераторы случайных чисел генерируют случайное число от 0,0 до 1,0. Математически в этом диапазоне бесконечные числа, но doubleэто число с плавающей запятой и, следовательно, имеет конечную точность. Итак, вопросы: …

18
Простая красивая печать поплавков на Python?
У меня есть список поплавков. Если я просто printэто сделаю , это будет выглядеть так: [9.0, 0.052999999999999999, 0.032575399999999997, 0.010892799999999999, 0.055702500000000002, 0.079330300000000006] Я мог бы использовать print "%.2f", что потребовало бы forцикла для обхода списка, но тогда это не сработало бы для более сложных структур данных. Я бы хотел что-то вроде …

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

10
Как повысить производительность с помощью высокоуровневого подхода при реализации длинных уравнений в C ++
Я занимаюсь разработкой инженерных симуляций. Это включает в себя реализацию некоторых длинных уравнений, таких как это уравнение, для расчета напряжения в резиновом материале: T = ( mu * ( pow(l1 * pow(l1 * l2 * l3, -0.1e1 / 0.3e1), a) * a * ( pow(l1 * l2 * l3, -0.1e1 …


2
Разрешена ли такая оптимизация с плавающей запятой?
Я попытался проверить, где floatтеряет способность точно представлять большие целые числа. Итак, я написал этот небольшой фрагмент: int main() { for (int i=0; ; i++) { if ((float)i!=i) { return i; } } } Этот код работает со всеми компиляторами, кроме clang. Clang генерирует простой бесконечный цикл. Godbolt . Это …


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

4
Преобразование числа с плавающей запятой в строку без его округления
Я делаю программу, которая по причинам, не требующим объяснения, требует, чтобы число с плавающей запятой было преобразовано в строку для подсчета с помощью len (). Однако str (float (x)) приводит к округлению x при преобразовании в строку, что отбрасывает все. Кто-нибудь знает, как исправить это? Вот код, который используется, если …

14
Swift - Как удалить десятичную дробь из числа с плавающей запятой, если десятичная дробь равна 0?
Я показываю расстояние с одним десятичным знаком, и я хотел бы удалить это десятичное число, если оно равно 0 (например, 1200,0 км), как я могу сделать это быстро? Я показываю это число так: let distanceFloat: Float = (currentUser.distance! as NSString).floatValue distanceLabel.text = String(format: "%.1f", distanceFloat) + "Km"


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