使用 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}`);
}
应该这样做
我有一个二次序列,我需要用它来循环,但是,我不确定如何执行这种逻辑...我想用二次序列来计算给定的数字<= 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}`);
}
应该这样做