Расчет странной десятичной точки в Excel - PullRequest
0 голосов
/ 14 июля 2020

У нас есть странный сценарий вычислений в Microsoft Excel: эта простая операция сложения приводит к 1 при 13 десятичном di git, в результате чего оно должно быть равно нулю

enter image description here

But when i extract the value in formula the result is correct (both formula value is the same but the result is different)

введите описание изображения здесь

С человеческим пониманием вычисление сложения будет уменьшать десятичное di git, а не добавлять его. Это намеренно или из-за ошибок?

1 Ответ

1 голос
/ 14 июля 2020

Я сильно полагаю, что это разрыв от ограниченной точности чисел с плавающей запятой. Точность цифровых номеров ограничена. Числа в Excel сохраняются в двоичном формате (но отображаются в десятичном формате). Это означает, что «0» не так защищен, как в десятичной системе счисления. Обычно Excel пытается скрыть это в примерах, подобных вашему.

Кроме того, если ваши числа получены из сложных вычислений (например, квадратные корни), точность может быть ограничена, поскольку большинство функций используют приближение с ограниченными итерациями, чтобы дать результат.

Более подробную информацию об арифметике с плавающей запятой c можно найти здесь. Блог посвящен pythin, но принцип его работы аналогичен. https://docs.python.org/3/tutorial/floatingpoint.html

...