В коде C ++ на Linux x86_64 мне нужно вычислить с двойной точностью (+ или -).
26,100000000000001 - 26 + 0,10000000000000001
Я получил:
0,20000000000000143
Я хочу получить 0,2.
здесь, формат отображения не импортируется, результаты вычислений будут использоваться для некоторых условий перехода if-else. Поэтому я хочу, чтобы условия if-else сравнивали 4 цифры после десятичной цифры.
Кажется, ошибка округления?
Как ограничить точность вычислений до 4 цифр после десятичной точки?
Я не хочу вызывать какие-либо функции, чтобы избежать накладных расходов.
Я не хочу использовать stringstream из-за затрат на преобразование.
Есть идеи получше?
спасибо