Почему 0.1 + 0.2 ≠ 0.3 в Python? 😱 БАГ или МАТЕМАТИКА?! #программирование #python #coding

preview_player
Показать описание
Почему 0.1 + 0.2 != 0.3 в Python? Это один из самых частых и самых неожиданных вопросов для начинающих программистов!

В этом коротком видео я объясняю, почему в питоне (и не только!) результат сложения 0.1 и 0.2 не равен 0.3, хотя логически всё кажется правильным.

📉 Проблема не в Python и не в вашем коде — дело в том, как компьютеры хранят дробные числа в формате с плавающей точкой.

💻 В двоичной системе счисления дроби вроде 0.1 и 0.2 невозможно точно представить — они превращаются в бесконечные двоичные дроби, как 1/3 = 0.333... в десятичной системе.

📌 Из-за этого, когда вы складываете 0.1 + 0.2, получается не ровно 0.3, а 0.30000000000000004.
Это — особенность IEEE 754 — стандарта, по которому работают почти все языки программирования: Python, JavaScript, C++, Java, Go и другие.

📚 Это видео будет полезно всем, кто изучает программирование, математику, computer science, а также тем, кто хочет лучше понимать, как на самом деле работает код.

🧠 Подписывайтесь на канал, если вам интересны:
- короткие разборы багов и фич в Пайтон
- объяснение сложных тем простыми словами
- секреты вычислений, алгоритмов и компьютерной логики

💬 Напишите в комментарии: вы знали об этом? Было ли для вас это неожиданностью?
Рекомендации по теме
Комментарии
Автор

Вопрос в том с какой точностью надо определить равенство например при работе с числами порядка 10^-30 это уже не сработает)

wion
Автор

Это работает только с 0.1+0.2 и на самом деле это просто отсылка

KiselIuseArchbtw
join shbcf.ru