Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Ametistos
0 / 0 / 0
Регистрация: 23.02.2013
Сообщений: 37
#1

Работа с числами типа double - Программирование Android

23.09.2013, 16:18. Просмотров 516. Ответов 2
Метки нет (Все метки)

еть два числа типа double: a=0.0001, b=500

при делении a/b=2.00000000000000002E-7, вопрос откуда лишняя двойка? и как от нее избавиться?

далее в коде (код не я писал) используется такая конструкция value =
BigDecimal.valueOf(val)
.setScale(precision, RoundingMode.HALF_UP).doubleValue();

где val наш результат деления. я так подозреваю это должно было решить проблему но почемуто не решило.. подскажите что почитать по этому поводу?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.09.2013, 16:18     Работа с числами типа double
Посмотрите здесь:
Android Округлить double
Перевод double в byte[] Android
Android Ввод в edittext double
Android Преобразование string в double
Android Преобразование EditText в Double
Сортировка массива с числами типа double C++
C (СИ) Как работать с числами типа long double
C# заполнение массива числами типа double с шагом
C (СИ) Какой спецификатор использовать для корректного вывода типа данных double и long double
C++ функция принимает два параметра типа double и возвращает значение типа double
Функция, которая принимает аргумент типа String и возвращает результат типа Double VBA
Работа с dlsym. Invalid conversion from 'void *' to 'double(*)(double)' C++ Linux

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
haribo
41 / 41 / 3
Регистрация: 26.05.2013
Сообщений: 160
23.09.2013, 16:23     Работа с числами типа double #2
double и float имеют определенный класс точности. точность типа float может занимать 2 бита, точноть double в два раза больше, то есть 4 бита.
Это примерно 7 знаков после запятой.
При делении a/b точность нужна явно больше чем 7 знаков после запятой, то есть происходит округление, отсюда двойка.

Используется тип данных с большей точностью.

Если я конечно правильно понял ваш вопрос.
Netscape
371 / 358 / 48
Регистрация: 02.10.2009
Сообщений: 712
Записей в блоге: 4
23.09.2013, 16:56     Работа с числами типа double #3
http://articles.org.ru/docum/java/gl4/gl4.php#5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru