我正在为 lua 开发一个基数转换器,可以将任何数字的基数转换为另一个基数。为此,我需要一个对数计算器。示例函数(其中
logarithm(100, 10)
等于 log10(100),等于 2):
function logarithm(value, base)
... -- Algorithm here
end
print(logarithm(100, 10))
哪个会输出:
2
P.S:我希望算法接受任何基数、任何值。
您可以随时使用它
logb(a) = logc(a) / logc(b)
其中
c
是提供的底数之一,例如自然对数或 10 的欧拉数 e
,有时还提供 2 对数的底数。
例如 math.log2 可以完成为
math.log2 = function (x)
return math.log(x) / math.log(2)
end