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

Ошибка в переменной типа double - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Типы данных http://www.cyberforum.ru/cpp-beginners/thread78449.html
Перекопал везде и всюду, может где-то и есть обьяснение по поводу типов данных. Какая разница между следующими типами данных (имеется ввиду между теми, в которых одинаковы размеры и границы величин)? ----------------------------------------------------------------------------------------------------------- тип размер границы...
C++ Уровнения по Методу Холецкого помогите решить систему линейных уровнений по схеме Холецкого в общем виде...Если можно с коментариями... http://www.cyberforum.ru/cpp-beginners/thread78439.html
C++ Удаление повторяющихся слов из стоки на C
Здравствуйте. Помогите пожалуйста реализовать задачу: Дана строка. Группа символов разделленая одним или несколькими пробелами считается словом. Необходимо удалить из строки все повторные вхождения слов. Похожие темы были,но полностью завершенных я не нашел и поэтому создал новую тему.
Вылетает при удалении памяти C++
У меня тут конфуз: class InversTree { struct element { double data; element *parent; element () {data=0; parent=NULL;} element (double num, element* _par=NULL) {data=num; parent=_par;}
C++ Отсортировать слова по алфавиту методом выбора и записать в новый файл http://www.cyberforum.ru/cpp-beginners/thread78411.html
Пишу на ms visual c++ 6 Оконное приложение.Первая кнопка читает текстовый файл и выводит слова в первый эдитбокс. Вторая должна отсортровать эти слова по алфавиту методом выбора и записать в новый файл. Вопрос в чем, если слова читаемые из файла остаются в эдитбоксе, т.е. в буфере, их можно взять и отсортировать, т.е. не прибегая к повторному чтению файла во время сортировки.Как это на частном...
C++ Динамические массивы 1. Добавить после каждого четного элемента элемент со значением 0 2. Добавить столбец в конец матрицы :-[пожалуйста подробнее

Показать сообщение отдельно
nill
8 / 8 / 0
Регистрация: 16.08.2009
Сообщений: 415
23.12.2009, 07:03     Ошибка в переменной типа double
Не могу понять в чем проблема
делаю такие вычисления

C++
1
2
3
4
5
6
7
8
9
10
11
#include <iomanip>
summ5=0;
summ5+=((double) 1/1035*2);
summ5+=((double) 1/1035*15);
summ5+=((double) 1/1035*108);
summ5+=((double) 1/1035*405);
summ5+=((double) 1/1035*351);
myfile << std::fixed << std::setprecision(20) << "summ5 "<< summ5<<"\n";
 
summ6=((double) 881/1035);
myfile << std::fixed << std::setprecision(20) << "summ6 "<< summ6<<"\n";
получаю summ5 равно 0.85120772946859913000
а summ6 равно 0.85120772946859902000


хотя summ5 должно быть равно summ6 так как (2+15+108+405+351=881)

если summ5 состоит из большего количества элементов то разница еще больше
а учитывая что таких элементов в программе может быть очень и очень много я боюсь что результаты вычислений будут совсем не корректными

В чем проблема ? ведь чисто математически числа не могут быть разными
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 00:14. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru