Подробное объяснение:
1️⃣ Python использует банковское округление (round half to even), а не привычное школьное «в большую сторону».
2️⃣ Когда число ровно посередине между двумя целыми, округляется к ближайшему чётному.
3️⃣ round(2.5) → 2 (ближайшее чётное).
4️⃣ round(3.5) → 4 (ближайшее чётное).
5️⃣ round(4.5) → 4 (ближайшее чётное).
Почему это важно:
В финансовых расчётах и при подсчёте статистики это может привести к расхождениям с ожидаемыми результатами. Стандарт IEEE 754 так округляет, чтобы уменьшить систематическую ошибку при большом количестве операций. Для точных десятичных вычислений (деньги, налоги) используйте Decimal из модуля decimal.
Post #4733
671
Python: задачки и вопросы
- ✍ 9