反向计算sqrt()

时间:2016-09-19 14:23:51

标签: php sqrt

我正在制作一个在线RPG游戏,我使用这个数学公式(在网上找到)来计算exp - >水平。

$level = (25 + sqrt(625 + 100 * $exp)) / 50;

我已经尝试了几天制作一个脚本来扭转它。 我的目标是创建一个函数来计算一个级别所需的exp数量。

4 个答案:

答案 0 :(得分:3)

事实证明,可以进一步简化为:

$exp = 25*($level*$level - $level);

推导:

l=(25 + sqrt(625 + 100e))/50
50l=25 + sqrt(625 + 100e)
50l-25=sqrt(625 + 100e)
(50l-25)^2=625 + 100e
(25*(2l-1))^2=625 + 100e
625*((2l-1))^2=625 + 100e
625*((2l-1))^2 - 625= 100e
625*((2l-1)^2 - 1) = 100e
625*((2l-1)^2 - 1)/100 = e
125*((2l-1)^2 - 1)/20 = e
25*((2l-1)^2 - 1)/4 = e
25*(4l^2-4l + 1- 1)/4 = e
25*(4l^2-4l)/4 = e
25*(l^2-l) = e

答案 1 :(得分:2)

通过重新排列和一些因子分解,

$exp = 25 * $level * ($level - 1)

答案 2 :(得分:0)

$exp = ((((50 * $level) - 25)**2) - 625)/100

答案 3 :(得分:0)

$exp = (pow(50 * $level - 25, 2) - 625) / 100;