Excel делает все, что это математика, как числа с плавающей запятой двойной точности. (Всего 64 двоичных бита)
Это дает вам от 14 до 15 значащих цифр в десятичном формате.
5000 097 208 326 954
16 цифр. Если вы делаете это в Excel...
A1 = 5000097208326954
A2 = A1 +1
A3 = A2-A1
A3 покажет 0.
полное раскрытие информации: я являюсь членом ACM, и я обязан сообщить общественность о рисках, связанных с вычислениями.
Это в нашем кодексе поведения.
пожалуйста, не используйте Excel для чего-нибудь критического.
вы получите более точные ответы с карманный научный калькулятор.
Excel написан на C / C++ и использует 64-битные числа, он также использует библиотеки Microsoft с плавающей запятой для вычисления таких функций, как sin, cos и exp. Эти библиотеки довольно неточны по сравнению с научными, даже работая на том же размере числа.
плавающая точка подходит для простых вещей, но ужасно для научной работы или серьезной инженерии, они слишком неточны.
Численные методы, где вы добавляете и умножаете числа снова и снова, становятся уродливыми быстро в плавающей точке, поскольку 15 цифр точности уходят, одна цифра каждые 4 умножения.
с плавающей точкой плохо для финансовой работы (0.2-бесконечное повторяющееся число в двоичной с плавающей точкой.)
Так что если вы добавите 0,2 доллара 1000 раз, немного денег пропадающий.
Программисты в финансовом мире используют бесконечные числа точности, где они должны (так же, как писать цифры на бумаге)
И затем используйте специальные функции для выполнения математики денег, что, когда все округление складывается, деньги не пропадают.
программисты старой школы использовали FORTRAN для математики, которая делает математику в десятичном формате, как вы или я.библиотеки очень точны в FORTRAN, так как пользователи ожидают делать численные методы; вот для чего это нужно. Калькуляторы используют десятичные и внутренне тоже.
Я использовал Excel для воспроизведения математических ошибок округления в программах C.
вы можете получить довольно графики Вашего расчета безнадежно неправильно таким образом.