Ruby中Math Power(**)的反转是什么?

zan*_*ona 22 ruby math

我想知道如何在Ruby中获得相反的功效?

2 ** 4 # => 16
Run Code Online (Sandbox Code Playgroud)

然后我想得到它的反转,我不确定使用哪个运算符

16 ?? 2 # => 4
Run Code Online (Sandbox Code Playgroud)

pax*_*blo 63

取幂的倒数是对数.如果,那么.ab = clogac = b

你可以找到对数函数的Math模块,专log()为碱基Ëlog10()为基数为10.

要获得不同基数(例如n)的对数,请使用公式,其中值为e或10.logNa = logxa/logxNx

对于您的具体情况:

log216
= loge16/loge2
= Math.log(16) / Math.log(2)
= 4

你是否认为这个解释很好,因为它扩展了你的知识,或者因为你讨厌高中数学而不好,完全取决于你:-)

  • 哈,非常感谢paxdiablo这是一个非常好的解释,是的,你是对的,我曾经讨厌它,但现在我可以看到我错过了很多,因为那,欢呼! (4认同)