
Float в Go: что должен понимать разработчик, чтобы не ловить странные баги
С типом float рано или поздно сталкивается почти любой разработчик. Сначала все выглядит просто. Есть float32 , есть float64 , можно хранить дробные числа, делить, умножать, считать проценты, средние значения,...
Anthropic — What company has the best second artificial intelligence model at the end of June?
В сфере искусственного интеллекта произошло заметное событие. С типом float рано или поздно сталкивается почти любой разработчик. Сначала все выглядит просто. Есть float32 , есть float64 , можно хранить дробные числа, делить, умножать, считать проценты, средние значения, коэффициенты и что угодно еще.
Кажется, что это просто “числа с точкой”. Но именно здесь у многих начинаются странные баги. Почему после серии вычислений число внезапно становится 9.
Технические детали
99999999997 вместо 10 ? Почему сравнение двух значений с float64 иногда работает, а иногда ломает логику? Почему в деньгах float почти всегда плохая идея?
И почему даже корректная формула может давать нестабильный результат? Проблема в том, что float устроен не так, как его часто себе представляют. Это не “точное дробное число”, а приближенное представление вещественных чисел в памяти компьютера.
В этой статье разберем, как устроен float в Go, где он полезен, где опасен, какие ошибки встречаются чаще всего и какие практики помогают не ловить неприятные сюрпризы в проде.
Этот прогресс даёт важные сигналы о будущем отрасли, и технологический мир внимательно наблюдает.





