Math Unity3D数学计算问题
我不太擅长数学,也不太擅长写下面的公式Math Unity3D数学计算问题,math,unity3d,Math,Unity3d,我不太擅长数学,也不太擅长写下面的公式 40x^2 + 360x 结果应如下所示 x=1结果应为400 x=2结果应为900 x=3结果应为1600 x=4结果应为2100 x=5结果应为2800 result = 40 * (int)Mathf.Pow((float)x, 2f) + (360 * x) x=1我得到400 x=2我得到880 x=3我得到1440 …等等 我做错了什么?看来您从代码中得到的答案是正确的 例如,在最上面的答案中,x=2900不可能作为答案。因为360 *
40x^2 + 360x
结果应如下所示x=1结果应为400
x=2结果应为900
x=3结果应为1600
x=4结果应为2100
x=5结果应为2800
result = 40 * (int)Mathf.Pow((float)x, 2f) + (360 * x)
x=1我得到400x=2我得到880
x=3我得到1440
…等等
我做错了什么?看来您从代码中得到的答案是正确的
例如,在最上面的答案中,x=2900不可能作为答案。因为360 * 2 = 720. 要得到900,你需要加上180,这不是40的任何倍数,最接近的是160。加上720等于880,比如代码中的答案。看来您从代码中得到的答案是正确的
例如,在最上面的答案中,x=2900不可能作为答案。因为360 * 2 = 720. 要得到900,你需要加上180,这不是40的任何倍数,最接近的是160。加上720等于880,比如在代码的答案中。而不是使用
Mathf.Pow()
,你可能应该使用x*x
来表示x平方。。。我会担心浮点版本中的浮点精度/截断问题。与其使用Mathf.Pow()
,不如使用x*x
进行x平方运算。。。我会担心浮点版本中的浮点精度/截断问题。谢谢,我用了我需要的另一种方法。我没有做计算,只是创建了一个字典作为查找。谢谢,我用我需要的东西走了一条不同的路线。我没有做计算,只是创建了一个字典作为查找。