home.social

#округление — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #округление, aggregated by home.social.

  1. Округление как зеркало корпоративной культуры в IT-продуктах

    Представление чисел в IT сфере - одна из самых простых вещей, которую интуитивно знает каждый разработчик, аналитик, тестировщик, админ (нужное подчеркнуть). Еще из школы мы помним: Округление — замена числа на его приближённое значение (с определённой точностью), записанное с меньшим количеством значащих цифр. Точные определения и механизмы легко гуглятся. Элементарные математические операции производятся в уме, мы даже не замечаем, как в разговорной речи мы округляем любые числа.

    habr.com/ru/articles/981444/

    #округление #требования #требования_к_разработке #менеджмент

  2. Вычисление/сравнение float и налоговая

    Проблема с округлениями чисел float и "необычные" последствия всего этого на примере большой учетной системы.

    habr.com/ru/articles/896736/

    #округление #налоговая

  3. [Перевод] Укрощаем суммы с плавающей запятой

    Допустим, у нас есть массив чисел с плавающей запятой, и мы хотим их суммировать. Можно наивно подумать, что их достаточно просто сложить, например, на Rust. Однако это запросто может привести к произвольно большой накопленной погрешности. Давайте проверим: naive_sum(&vec![1.0; 1_000_000]) = 1000000.0 naive_sum(&vec![1.0; 10_000_000]) = 10000000.0 naive_sum(&vec![1.0; 100_000_000]) = 16777216.0 naive_sum(&vec![1.0; 1_000_000_000]) = 16777216.0 Ой-ёй… Что произошло? Проблема в том .что следующее 32-битное число с плавающей запятой после 16777216 — это 16777218 . Так что при вычислении 16777216 + 1 , значение округляется до ближайшего числа с плавающей запятой, имеющей чётную мантиссу, то есть снова до 16777216 . Мы зашли в тупик. К счастью, есть более совершенные способы суммирования массива.

    habr.com/ru/articles/819135/

    #числа_с_плавающей_запятой #сложение #оптимизации #округление #погрешности_округления

  4. Малоизвестные детали реализации Math.Round() в .Net

    Недавно довелось разбирать багрепорт одного клиента на нашу программу, где клиент указал на ошибку в отчете в одну копейку.Казалось бы, сложно себе представить программиста или вообще IT-шника, который не знает как работает функция округления. Тем не менее, почти двадцатилетний опыт разработки в данном случае не панацея. Разобравшись с корнями проблемы, я поискал материалы в русскоязычном и англоязычном интернете, и если на английском ещё есть тематические подборки материалов, но на русском и тем более на Хабре я этого не нашёл.Поэтому спешу поделиться с читателями Хабра собранным и систематизированным материалом.

    habr.com/ru/articles/801899/

    #программирование #net #округление #неожиданная_непонятность #microsoft