170 похожих чатов

Скажите, пожалуйста, я уже несколько дней отлаживаю код для множества

сложных математических преобразований, включая аггрегацию и математическое округление.
На выходе получаю результат, который немного отличается от целевого. Причём видно что ранние переменные отклоняются буквально на десятые доли. А более поздние производные переменные отклоняются всё сильнее и сильнее.

Сначала я писал код экономя оперативу и используя всякие std::uint8 ит.п. Потом при попытке вывода числа получил какой то символ и решил не шутить с тем что не очень понимаю как работает - заменил всё на int, long long int и float.

Мне показалось что int на int делится не очень хорошо, поэтому решил вообще не рисковать и заменил всё что можно, кроме совсем мелких, гарантированно целых чисел не участвующих в преобразованиях, на double.

И вот я делаю cout ряда чисел в цикле, и вижу что, 111.25 выводится нормально, а вот, 131853.5 выводится как 131854.

Причём если сделать cout << std::fixed <<
То выводится ок.

Я предполагаю что, наверное, это просто сокращённая форма вывода. Хотя мне кажется странным идея по умолчанию сокращать и округлять double при выводе.

Я прав или из-за этого могут возникнуть проблемы с точностью вычислений?

6 ответов

19 просмотров

Оберните код в теги: 3 символа ` до и после кода (в случае одиночной конструкции достаточно 1 ` с обеих сторон). Спасибо!

Сокращенная форма вывода, не более. Само число от этого не округляется

Виктор-Nekrasov Автор вопроса
다니엘(줄리아)
Сокращенная форма вывода, не более. Само число от ...

понял, спасибо. А то с этими длительными отладками уже на воду дуть начинаю)

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

А setprecision ставили на выводе?

Виктор-Nekrasov Автор вопроса

Похожие вопросы

Обсуждают сегодня

Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
А вот это что за конструкция? Вернее, она тут нафига?
Serjone
10
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Мужики. привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных элементов...
Kraszx
2
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
я так понимаю, я так подозреваю, что создание такого плагина для человека, кто умеет писать плагины для делфи потребует минут 5-10 времени. но это мое подозрение. хотелось бы ...
Kraszx
7
Всем привет! Кто пользуется DevExpress, подскажите пожалуйста, реализован ли в TcxGrid в новых версиях поиск по датам как в Экселе (ну т.е. не просто список чекбоксов со значе...
A Z
4
Карта сайта