如何制作曲线数组?

时间:2014-02-25 05:16:27

标签: java javascript math

我需要创建一个返回数字升序的函数,如果我们在视觉上绘制,应该看起来像这样弯曲:

enter image description here

预期结果示例:0, 110, 650, 1500, 2800, 4800, 7300, 10500, 14500, 19200, ...

老实说,我不知道如何实现这一目标,请提供一些提示或一段代码,或者通过向我提供搜索的确切条款(如果这是数学的东西?),我将非常感谢您的帮助。谢谢。

2 个答案:

答案 0 :(得分:3)

尝试Math.Exp(base, exponent)我相信它有你想要的东西。要影响曲线,请尝试使用系数添加更多项。

例如:

int[] curve = new int[400];
for (int i = 0; i < 400; i++)
{
    curve[i]= Math.Exp(i,2) + (4*i);  // y=(x^2)+4i
}

您可能需要使用强制转换来将Math.Exp()吐出的Double转换为int(或您喜欢的任何内容)。

答案 1 :(得分:1)

如果您需要从0开始,请尝试Math.expm1(double)

...
for(int i = 0; i < n; i++) {
  r[i] = Math.expm1((double)i);
}
...