Видео и подкасты для разработчиков
Числа в программировании — Почему компьютер не понимает 0.1 + 0.2
В этом выпуске говорим о том, как компьютеры представляют числа – от int и float до NaN, BigInt, decimals и комплексных.
В этом выпуске говорим о том, как компьютеры представляют числа – от int и float до NaN, BigInt, decimals и комплексных. В гости пришёл разработчик Никита Тонский Прокопов, с которым мы прошлись по всему числовому зоопарку: обсудили, зачем нужны разные типы, где они подводят, и почему 0.1 + 0.2 ≠ 0.3 – не баг, а особенность.
Разбираемся, как работают переполнения, откуда берётся погрешность, можно ли использовать float для денег (спойлер: нельзя), и что общего между округлением и падением ракеты. А ещё вспомнили любимые числовые фэйлы, сравнили числа в разных языках программирования и даже сыграли в игру на угадывание результатов арифметических операций.
Содержание:
- 00:00 О чём выпуск
- 04:06 Как компьютеры представляют числа
- 07:46 Целые: без знака и со знаком
- 16:08 Почему byte в Java – знаковый
- 18:50 Переполнение и модуль
- 22:31 Округление и его сюрпризы
- 26:58 Почему 0.1 + 0.2 ≠ 0.3
- 38:26 Зачем вообще нужны float’ы
- 44:25 Как это используется в крипте
- 49:25 Что внутри у числа с плавающей точкой
- 01:06:28 Рациональные числа в Clojure
- 01:19:33 Особенности JavaScript
- 01:20:32 Артефакты float-арифметики
- 01:24:22 Где числа важны программисту
- 01:27:43 Типизация и читаемость
- 01:30:04 Что будет с точностью дальше
- 01:35:48 Финальные мысли
-
Кроссплатформенная разработка4 недели назадFlutter после увольнений: вот честная оценка, которую никто не хочет давать
-
Программирование4 недели назадПрактики Swift, которые помогут вам выглядеть Senior разработчиком
-
Новости2 недели назадВидео и подкасты о мобильной разработке 2026.20
-
Видео и подкасты для разработчиков2 недели назадОт личной продуктивности к командной: сила шаблонизации в IDE
