diff options
Diffstat (limited to 'aoc-2020-gleam/src/ext/intx.gleam')
-rw-r--r-- | aoc-2020-gleam/src/ext/intx.gleam | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/aoc-2020-gleam/src/ext/intx.gleam b/aoc-2020-gleam/src/ext/intx.gleam index 5c9bcc0..aec513b 100644 --- a/aoc-2020-gleam/src/ext/intx.gleam +++ b/aoc-2020-gleam/src/ext/intx.gleam @@ -1,6 +1,8 @@ import gleam/int import gleam/bool +import gleam/float import gleam/order.{Eq, Gt, Lt} +import ext/resultx as resx pub fn is_between(number: Int, min: Int, and max: Int) { min <= number && number <= max @@ -35,3 +37,10 @@ fn do_reverse_bits(val: Int, rev: Int, length: Int) -> Int { pub fn reverse_bits(val: Int, length: Int) -> Int { do_reverse_bits(val, 0, length) } + +pub fn sqrt(x: Int) { + x + |> int.square_root + |> resx.assert_unwrap + |> float.round +} |