我一直在研究这个主题的各种线程和语言,但似乎没有找到一种解决方案,可以通过Java中的do while
循环将斐波那契数列的阈值停止在100以下。
var fbnci = [0, 1];
var i = 2;
do {
// Add the fibonacci sequence: add previous to one before previous
fbnci[i] = fbnci [i-2] + fbnci[i-1];
console.log(fbnci[i]);
fbnci[i]++;
}
while (fbnci[i] < 100);
由于某种原因,上面的代码只能运行一次。为了继续打印结果直到达到最接近的值100,我应该将while条件设置为什么?
最佳答案
您的代码有误,应该是:
var fbnci = [0, 1], max = 100, index = 1, next;
do {
index++;
next = fbnci[index-2] + fbnci[index-1];
if (next <= max) {
console.log(next);
fbnci[index] = next;
}
} while(next < max);
解决方案:打印所有低于最大值的光纤编号。
关于javascript - Fibonacci序列Javascript执行while循环,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37073964/