Elixir:
Avrunding av tall
Hvordan:
I Elixir kan du bruke Float.round/2
for å avrunde et flyttall. Du kan spesifisere antallet desimaler du vil beholde. Slik fungerer det:
# Avrund et tall uten desimaler
Float.round(3.14159) # => 3.0
# Avrund et tall til 2 desimaler
Float.round(3.14159, 2) # => 3.14
# Avrund et tall med negativ presisjon til nærmeste 10
Float.round(123.456, -1) # => 120.0
Dypdykk
Å avrunde tall er et klassisk problem i datavitenskap—så mye så at valget av avrundingsstrategi kan påvirke finansielle systemer, vitenskapelige beregninger og mer. Elixirs Float.round/2
standardiserer til “halv opp” avrunding, som ligner på tradisjonell avrunding lært i matteklasse.
Hvis du trenger andre typer avrunding, lar Elixir deg lage dine egne. Vurder for eksempel “gulv” avrunding (alltid ned) eller “tak” avrunding (alltid opp). Du ville brukt Float.floor/1
eller Float.ceil/1
, henholdsvis.
# Gulv avrunding
Float.floor(3.999) # => 3.0
# Tak avrunding
Float.ceil(3.001) # => 4.0
Disse alternativene hjelper med å skreddersy avrunding til de eksakte behovene til applikasjonen din, enten det er finansberegninger, grafikkrendering eller dataapproksimasjon.
Se også
For mer om Elixirs avrundingsfunksjoner og flyttall:
- Elixirs offisielle dokumenter om
Float
: https://hexdocs.pm/elixir/Float.html - IEEE Standard for Flyttallaritmetikk (IEEE 754): https://ieeexplore.ieee.org/document/4610935