Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Почему решение алгоритма арифметически неточно?

Выполнив одно из заданий курса по Питону, заметил, что одно из вычисленных алгоритмом значений имеет как-то уж слишком много знаков после запятой. Проверил ответ на калькуляторе - действительно, есть расхождение. Почему так?
ПрограммированиеPython+1
Денис Голубев
  ·   · 3,6 K
старший разработчик в pseven.io  · 29 окт 2021
Эта проблема существует не только в Питоне, но в других языках, где арифметические операции производятся над числами в двоичном формате (а это подавляющее большинство).
Многие десятичные дроби нельзя точно перевести в двоичный формат с плавающей точкой, т.к. получается периодическая дробь. При произведении операций с таким числом возникает погрешность, которая может стать заметна при переводе обратно в десятичный формат.
Модуль decimal реализует точное вычисление десятичных (отсюда и название) дробей за счёт снижения производительности и усложнения процесса работы для программиста. Во многих случаях (в т.ч. в вашем примере) такая точность не нужна, достаточно округления до фиксированного знака. Например, при вычислении длины в метрах можно округлять до третьего знака после запятой (до миллиметров) и т.п.
Что-то осталось непонятно? Спроси в нашей группе в Телеграме!Перейти на t.me/jstsmentor
Лучший
Школа программирования для детей "КИД КОД" Препода...  · 28 сент 2021  · kidkod.ru
Математика взаимодействия с числами с плавающей запятой реализована разными способами в базовом интерпретаторе пайтона и калькуляторе в windows. Если вам нужны точные вычисления используйте модуль decimal
Обучаем детей с 7 лет программированию и компьютерной грамотности.Перейти на kidkod.ru
Просто странно, что это доп. модуль, а не часть базового функционала
🍀 Естествоиспытатель   · 28 сент 2021  · shymanovsky.mooo.com
Вычисление арифметических действий в компьютерах - целая наука, довольно сложная. Там используются специальные низкоуровневые алгоритмы, причем такие, которые смогли бы работать и с целыми числами, и с дробными, и с отрицательны... Читать далее
Вообще говоря, не составило бы труда дополнить алгоритм вычисления шагом, который бы определял, до какого разряда... Читать дальше