Цитата:
Сообщение от kackbip
И все таки это следствие лени разработчиков.
Таких сюрпризов можно было бы избежать.
|
И где же вы раньше были? Как всегда появился гений, которому наплевать на 20 летние разработки математиков и программистов всего мира.
Цитата:
Сообщение от murz
как насчет "С", СИ крут, а все остальное реально не для точных вычислений.
|
Си ничем не отличается от других языков программирования — использует все те же числа с плавающей запятой. Только одно отличие — в настройках можно указать повышенную точность вычислений вещественных чисел, что означает, что все вычисления будут производиться с 80битными числами, а затем округлятся, а не обрезаться до размера переменной этого типа.
Цитата:
Сообщение от kackbip
Это неизбежно приводит к багам или увеличению сроков разработки.
|
Помоему вы накручиваете проблему, я при разработке программ очень часто имею дело с вещественными числами, ни разу это не вызывало для меня проблем. Тот факт, что вычисления с вещественными числами не соответствуют вычислениям с десятичными нужно просто учесть — это плата за скорость работы с такими числами. Например, нужно исключить из программы все сравнения с такими числами, сравнивать всегда нужно с учетом погрешности. Также нельзя складывать числа, которые сильно отличаются порядком.
В программах, в которых требуется точность вычислений не используются числа с плавающей запятой. В программах, которые работают с деньгами используются числа с фиксированной запятой — фактически каждое число умножается на 10000 для вычислений, а затем делится при выводе. Также есть вариант чисел очень высокой точности — при вычислениях точность чисел повышается автоматически.