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

Точности вычислений и преобразований double - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ map<> в C, не в C++! http://www.cyberforum.ru/cpp-beginners/thread56572.html
всем привет! обращаюсь как Вам, так как не могу найти ответ в инете. если локанично: нужен map в C. в C++ уже есть класс и функции, но к сожалению необходимо все писать на C. как это можно...
C++ Вычисление суммы ряда Помогите, пожалуйста, с решением задачи. Не могу никак оформить саму сумму ряда, не знаю как правильно записать :cry: Вычислить сумму ряда (приближенное значение функции arctg для |x|<1)... http://www.cyberforum.ru/cpp-beginners/thread56571.html
Сравнение алгоритмов сортировок C++
Помогите пожалуйста! Очень надо написать программу. Задание такое: Разработать программу на языке «Си», реализующую четыре различных алгоритма сортировки одномерного целочисленного массива. Массив...
Стоит ли пользоваться Турбо Си???? C++
Так что получается Турбо Си - плохой???? и лучше и не пользоваться данным компилятором?????
C++ Посчитать слова от А до Я. http://www.cyberforum.ru/cpp-beginners/thread56524.html
Задача: есть строка символов и надо узнать сколько есть слов в этой строке, которые начинаются с буквы "A" и заканчиваются "Я". Благодарю.
C++ Как импортировать ресурс "диалоговое окно" из другого проекта? Написал-отладил проект "настройка FTP соединения" с диалоговым окном. Теперь пишу другой проект, который будет включать в себя вышеописаный проект, вызывающийся по кнопке "настройка". Т.е. надо из... подробнее

Показать сообщение отдельно
like-nix
351 / 32 / 6
Регистрация: 02.07.2008
Сообщений: 311

Точности вычислений и преобразований double - C++

15.10.2009, 14:37. Просмотров 1992. Ответов 3
Метки (Все метки)

Всем привет!

Вопрос точности вычислений и преобразований double.

Объясните пожалуйста следующее:

Арифметические операции:
C++
1
double test_k = 1495.0 * 0.00001;
test_k = 0.014950000000000001

Преобразования:
C++
1
2
3
4
  char buffer [50];
  double a=5.38986;
  sprintf(buffer, "%f", a);
  sscanf(buffer, "%lf", &test_k);
test_k = 5.3898599999999997

В обоих случаях получаем погрешность. Как сделать так чтобы не было погрешности в вычислениях?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru