Elixir v1.0.5 Float
Functions for working with floating point numbers.
Summary
Functions
Rounds a float to the largest integer greater than or equal to num
Rounds a float to the largest integer less than or equal to num
Parses a binary into a float
Rounds a floating point value to an arbitrary number of fractional digits (between 0 and 15)
Returns a char list which corresponds to the text representation of the given float
Returns a list which corresponds to the text representation
of float
Returns a binary which corresponds to the text representation
of some_float
Returns a binary which corresponds to the text representation
of float
Functions
Specs
ceil(float, 0 .. 15) :: float
Rounds a float to the largest integer greater than or equal to num
.
Ceil also accepts a precision to round a floating point value down to an arbitrary number of fractional digits (between 0 and 15).
This function always returns floats. One may use Kernel.trunc/1
to
truncate the result to an integer afterwards.
Examples
iex> Float.ceil(34.25)
35.0
iex> Float.ceil(-56.5)
-56.0
iex> Float.ceil(34.253, 2)
34.26
Specs
floor(float, 0 .. 15) :: float
Rounds a float to the largest integer less than or equal to num
.
Floor also accepts a precision to round a floating point value down to an arbitrary number of fractional digits (between 0 and 15).
This function always returns floats. One may use Kernel.trunc/1
to
truncate the result to an integer afterwards.
Examples
iex> Float.floor(34.25)
34.0
iex> Float.floor(-56.5)
-57.0
iex> Float.floor(34.253, 2)
34.25
Specs
parse(binary) :: {float, binary} | :error
Parses a binary into a float.
If successful, returns a tuple of the form {float, remainder_of_binary}
.
Otherwise :error
.
Examples
iex> Float.parse("34")
{34.0,""}
iex> Float.parse("34.25")
{34.25,""}
iex> Float.parse("56.5xyz")
{56.5,"xyz"}
iex> Float.parse("pi")
:error
Specs
round(float, 0 .. 15) :: float
Rounds a floating point value to an arbitrary number of fractional digits (between 0 and 15).
This function only accepts floats and returns floats. Use Kernel.round/1
if you want a function that accepts both floats and integers and always
returns an integer.
Examples
iex> Float.round(5.5674, 3)
5.567
iex> Float.round(5.5675, 3)
5.568
iex> Float.round(-5.5674, 3)
-5.567
iex> Float.round(-5.5675, 3)
-5.568
Specs
to_char_list(float) :: char_list
Returns a char list which corresponds to the text representation of the given float.
Inlined by the compiler.
Examples
iex> Float.to_char_list(7.0)
'7.00000000000000000000e+00'
Specs
to_char_list(float, list) :: char_list
Returns a list which corresponds to the text representation
of float
.
Options
:decimals
— number of decimal points to show:scientific
— number of decimal points to show, in scientific format:compact
— when true, use the most compact representation (ignoredwith the `scientific` option)
Examples
iex> Float.to_char_list 7.1, [decimals: 2, compact: true]
'7.1'
Specs
to_string(float) :: String.t
Returns a binary which corresponds to the text representation
of some_float
.
Inlined by the compiler.
Examples
iex> Float.to_string(7.0)
"7.00000000000000000000e+00"
Specs
to_string(float, list) :: String.t
Returns a binary which corresponds to the text representation
of float
.
Options
:decimals
— number of decimal points to show:scientific
— number of decimal points to show, in scientific format:compact
— when true, use the most compact representation (ignoredwith the `scientific` option)
Examples
iex> Float.to_string 7.1, [decimals: 2, compact: true]
"7.1"