使用 Javascript 中的二次序列进行迭代

Iterating using a quadratic sequence in Javascript

我有一个二次序列,我需要用它来循环,但是,我不确定如何执行这种逻辑...我想用二次序列来计算给定的数字<= n。问题是我必须给我的循环二次序列一些数字来计数和迭代......我知道可以通过像 i += 2 这样的事情来迭代 2s、3s、4s 等,是否也可以使用二次表达式?是否有使用 Javascript 的方法可以让我遍历二次序列?我希望这是清楚的,谢谢!

这是我的代码:

二次序列是控制台记录的序列。 前 14 项是:1,3,6,10,15,21,28,36,45,55,66,78,91,105

for (let i = 1; i <= 14; i++) {
      let a = i;
      let nthTerm = a - 1;
      let b = 1 / 2;
      let quadraticSequence = b * a ** 2 + b * a;
      
console.log(`${nthTerm} ${quadraticSequence}`);
      
const num = 93;

      // use quadratic sequence to count up to a number <= 93;
      for (i = 0; i <= num; i++quadraticSequence) {
        console.log(i);
      }
    }

结果应该 console.log 计数 0 > 105。我知道第二个 for 循环不正确,但我不太确定如何进行正确的尝试。

因此,与其计算 1,2,3,4,5,6,7,8,9...,不如计算 1,3,6,10,15,21,28,36, 45,55 ...最终,我试图通过二次序列而不是通常的 1,2,3,4,5 序列来计算给定数字 <= n(即 93)。

let num = 93;
for (let i = 1, j = 2; i < 100; i += j, j += 1) {
  console.log(i);
  for (let k = 0; k <= num; k += i) {
    console.log(k);
  }
}

这将产生序列 1、3、6、10、15、21、28、36 ...,然后在单独的 for 循环中使用它们中的每一个作为步长。

另一种解释是使用二次级数中的第 0 个元素作为第一步长,将下一个元素作为下一个步长等。

for (let i = 1, j = 2, k = 0; k < 1000; k += i, i += j, j += 1) {
  console.log(`Current, step: ${k}, ${i}`);
}

应该这样做