Продолжая исследовать проблему точности десятичных вычислений средствами двоичной арифметики, начатую в предыдущих постах [1,2,3,4], мне удалось разработать алгоритмы вычисления вещественных чисел, представленных в формате десятичных чисел с плавающей точкой, которые дают такой же точный результат, как если бы вычисления велись вручную. Читать дальше →
Развивающая книга «Первые уроки арифметики и геометрии с Карамелькой» из серии «Веселые уроки с Карамелькой» марки Феникс для девочек. Первые уроки арифметики и геометрии в компании Карамельки. Милая кошечка и её друзья помогут решать интересные задачи, развивать моторику и укреплять память. Размер: 21,3х21,5 см. Рекомендовано для детей от 3 лет. Феникс Развивающая книга Первые уроки Continue reading →
На древних глиняных табличках из Месопотамии встречаются математические тексты с достаточно сложными вычислениями. Кроме прочего, для записи чисел использовалась шестидесятеричная система, которая имеет существенное «компьютерное» преимущество перед современной десятичной. Посмотрим, как можно считать в клинописных «галках» и «палках», как записывать дроби, и что это даёт в сравненнии не только с десятичной, но и с шестнадцатеричной системой. Читать далее
double быстрый, но хранит десятичные числа как двоичные приближения: 0.1 + 0.2 дает 0.30000000000000004. BigDecimal точен в десятичной арифметике, но дороже по памяти и CPU.Выбор зависит от задачи: для метрик и ML хватит double с допуском, для налогов и счетов нужен BigDecimal с явным RoundingMode, для низкой latency - fixed-point на long.Ошибка не в double или BigDecimal, а в выборе без понимания точности, округления и нагрузки. Подробнее - в новом переводе от команды Spring АйО. Читать далее