Elixir:
Округление чисел
Как это сделать:
В Elixir вы можете использовать Float.round/2
для округления числа с плавающей точкой. Вы можете указать количество десятичных знаков, которые хотите сохранить. Вот как это работает:
# Округлить число до нуля десятичных знаков
Float.round(3.14159) # => 3.0
# Округлить число до 2 десятичных знаков
Float.round(3.14159, 2) # => 3.14
# Округлить число с отрицательной точностью до ближайшего 10
Float.round(123.456, -1) # => 120.0
Подробнее
Округление чисел — классическая проблема в информатике, настолько, что выбор стратегии округления может повлиять на финансовые системы, научные расчеты и многое другое. Float.round/2
в Elixir по умолчанию использует округление “к большему полу”, которое напоминает традиционное округление, изучаемое в школе.
Если вам нужны другие типы округления, Elixir позволяет создать собственные. Рассмотрим, например, округление “вниз” (всегда к меньшему) или округление “вверх” (всегда к большему). Вы бы использовали Float.floor/1
или Float.ceil/1
соответственно.
# Округление вниз
Float.floor(3.999) # => 3.0
# Округление вверх
Float.ceil(3.001) # => 4.0
Эти альтернативы помогают адаптировать округление к точным потребностям вашего приложения, будь то финансовые расчеты, рендеринг графики или приближение данных.
См. также
Для дополнительной информации о функциях округления в Elixir и числах с плавающей точкой:
- Официальная документация Elixir по
Float
: https://hexdocs.pm/elixir/Float.html - Стандарт IEEE для арифметики с плавающей точкой (IEEE 754): https://ieeexplore.ieee.org/document/4610935