x ^ y = z
我有x
和z
的价值。我想使用Ruby找出y
的值。
例如:
x = 10
z = 100
# 10 ^ 2 => 100
我的预期结果是2
。 Ruby语言有内置的方法可以解决这个问题吗?
答案 0 :(得分:5)
取幂的倒数称为logarithm。在Ruby中,以10为底的对数(即x == 10
)实现为Math.log10(z)
:
irb(main):005:0> Math.log10(100)
=> 2.0
如果您需要x
的不同值,请使用Math.log(z, x)
:
irb(main):006:0> Math.log(100, 10)
=> 2.0
答案 1 :(得分:3)
它是对数函数:
> Math.log(100, 10)
=> 2.0