Здравствуйте, Adriano, Вы писали:
A>Здравствуйте, telek1024, Вы писали:
A>>>Если установить точность — 4, то все правильно:
T>>Так я сказал про 20
Поставьте 20 и поймёте, почему при 3 — неправильно, а при 4 правильно.
A>>>Как быть если нужна точность 3 знака после запятой?
T>>Не использовать числа с плавающей точкой.
A>Библиотеки разрабатываются другим отделом и заставить их переписать все с использованием decimal не так то просто.
Придётся. Так как тип используется не по назначению.
Или писать обёртку.
A>Также используется питон:
A>с++ double -> Python double -> c++ double
A>В питоне есть модуль decimal, на моем примере питоновский decimal в 2000 раз медленнее чем double, говорят что он хранит число как список из integer.
Мир не совершенен. double работает быстро, но портит младшие разряды. decimal — медленно, но не портит результат.