随时间变化的变量Y应该接近另一个变量X

时间:2018-10-18 13:15:39

标签: javascript algorithm

我有一个随时间(每个500ms)增加的变量X。我也有一个具有随机初始值的变量Y。我有10个步骤(每个步骤之间50毫秒),在这些步骤中,Y应该更接近X值,但要流畅。在最后一步中,我们应该使Y = X,但要流畅地完成这10个步骤。

我在下面尝试了这段代码,但距离最后一步Y = X的目标还很遥远,我觉得我应该使用一些数学级数,但是我不知道怎么做

// A variable X that is increasing over time (each 500ms)
var x = 10
var intervalX = setInterval(function() {
x += 1;
console.log("x = " + x)
}, 500);

//A variable Y with random intial value,
var y = 231;
var step =0;
var intervalY = setInterval(function() {
var distanceYX = (x - y) / 10
y += distanceYX
console.log("y = " + y)
step++;
  if(step==10) {
    clearInterval(intervalY)
  }
}, 50);

PS:Y可以高于或低于X

1 个答案:

答案 0 :(得分:0)

好吧,这叫做数学上的序列进行式,而不是序列(这是该序列的部分和)-可能是术语混淆:)< / p>

如果希望它线性地到达 ,则称为算术序列;如果希望指数性地到达它 ,则称为几何序列。

您知道A(1)(第一项),即X 你知道A(n)(最后一项)是Y 你知道n-是10

您可以将它们插入geometric sequencearithmetic sequence的公式中。