I was wondering how to get the inverse of power in Ruby?
2 ** 4 # => 16
and then I would like to get the inverse of it, and I'm not sure which operator to use
16 ?? 2 # => 4
The inverse of exponentiation is the logarithm. If ab = c
, then logac = b
.
You can find logarithm functions in the Math
module, specifically log()
for base-e and log10()
for base-10.
To get a logarithm to a different base (say n
), use the formula logNa = logxa/logxN
, where x
is a value such as e or 10.
For your specific case:
log216
= loge16/loge2
= Math.log(16) / Math.log(2)
= 4
Whether you consider the explanation good because it expands your knowledge, or bad because you hated high school math, is entirely up to you :-)
Math.log(16) / Math.log(2)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With