Прошу объяснить матекатику 1,8-1=0,800004

Общие вопросы программирования, алгоритмы и т.п.

Модератор: Модераторы

Re: Прошу объяснить матекатику 1,8-1=0,800001

Сообщение Дож » 19.03.2015 17:07:26

Конечно, согласуется :) Весь прикол в том, что я ничего не вычислял, не округлял! Я просто взял 0.8 и распечатал. Это и есть представление числа 0.8 в формате Double. 8/10 в двоичной системе счисления является периодической дробью, а потому не может быть точно записано (не может быть точно записано конечным числом знаков).
Последний раз редактировалось Дож 19.03.2015 19:45:00, всего редактировалось 1 раз.
Аватара пользователя
Дож
энтузиаст
 
Сообщения: 899
Зарегистрирован: 12.10.2008 16:14:47

Re: Прошу объяснить матекатику 1,8-1=0,800001

Сообщение zub » 19.03.2015 17:12:35

Лично сталкивался с "проблемами" плавающей точки за всё время использования всего пару раз:
первый - когдато давно, в модуле math поломали толи tan, толи arctan - непомню, быстро починили, но я успел поломать голову откуда у меня взялись эти косяки))
второй - при отображении средствами опенгл графики очень сильно удаленной от начала координат - тогда в матрицу проекции проскакивают как очень большие числа, так и очень маленькие и результат операций над ними какраз на уровне погрешности. картинка во вложении. Проблема решаемая и ей страдают не только приложения написанные на фпц, разрабы которого не позаботились о "высокоуровневости"))
Вложения
far.gif
zub
долгожитель
 
Сообщения: 2886
Зарегистрирован: 14.11.2005 23:51:26

Re: Прошу объяснить матекатику 1,8-1=0,800001

Сообщение Sharfik » 19.03.2015 19:34:03

Я когда писал название не ориентировался на свою ситуацию, а просто суть описал.

Добавлено спустя 10 минут 52 секунды:
Re: Прошу объяснить матекатику 1,8-1=0,800004
zub писал(а):Лично сталкивался с "проблемами" плавающей точки за всё время использования всего пару раз:
первый - когдато давно, в модуле math поломали толи tan, толи arctan - непомню, быстро починили, но я успел поломать голову откуда у меня взялись эти косяки))
второй - при отображении средствами опенгл графики очень сильно удаленной от начала координат - тогда в матрицу проекции проскакивают как очень большие числа, так и очень маленькие и результат операций над ними какраз на уровне погрешности. картинка во вложении. Проблема решаемая и ей страдают не только приложения написанные на фпц, разрабы которого не позаботились о "высокоуровневости"))

Меня этот баг добил просто... нормальных программ под промышленное электроснабжение найти сложно, начал свою делать, потом полезло, это сам, тут сам, там сам. Тут проект новый перерыв, теоретически модуль расчета нагрузок можно было успеть сделать, и не чертить руками всю ерунду, а срок старта работы подошел, а вместо нужного расчета оказывается что коэффициент все программа выбрать не может. Опять полевые испытания откладываются.
PS: Давно хотел сказать. Ты бы примеры проекта крикладывал к zcad, я когда пробовал разобраться как и что работает в нем, кроме простых демок dxf ничего не находил внутри. И понять как с ним работать сложно без рабочего примера.
Аватара пользователя
Sharfik
энтузиаст
 
Сообщения: 791
Зарегистрирован: 20.07.2013 01:04:30

Re: Прошу объяснить матекатику 1,8-1=0,800004

Сообщение zub » 19.03.2015 21:14:44

Примеры там получаются очень узко специализированные - расстановка извещателей, нумерация, автоматическая прокладка кабелей, построение "рыбы" для схем подключений-соединений Среднестатистическому интересанту неинтересны будут - "общечертежный" функционал почти не развит. Всё собираюсь подбить пдфку в комплекте до актуального состояния - но лень съедает всё свободное время)) Сейчас доделываю очередную эпопею с инспектором - подделжка редактирования множественного выбора примитивов и надеюсь возмусь.
Ты не рассматривал зкад как чертилку под свои нужды?
zub
долгожитель
 
Сообщения: 2886
Зарегистрирован: 14.11.2005 23:51:26

Re: Прошу объяснить матекатику 1,8-1=0,800004

Сообщение Sharfik » 19.03.2015 22:53:32

в теме твоей программы написал ответ.
viewtopic.php?p=85173#p85173
Аватара пользователя
Sharfik
энтузиаст
 
Сообщения: 791
Зарегистрирован: 20.07.2013 01:04:30

Re: Прошу объяснить матекатику 1,8-1=0,800004

Сообщение mig-31 » 23.03.2015 16:01:59

Описанную вами ситуацию видел недавно и в LabView. Так что FreePascal имплементирует точность правильно.
mig-31
постоялец
 
Сообщения: 224
Зарегистрирован: 14.07.2011 13:46:48

Пред.

Вернуться в Общее

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 18

Рейтинг@Mail.ru
cron