我正在尝试解决一个任务,这是任务:
该程序创建一个值为5的变量p和一个空数组的变量值。
用循环完成程序,该循环用p值填充数组,其中p在每次迭代结束时以-0.5到0.5之间的随机值递增(使用Math.random()-0.5)。
当p为负或大于10时,停止循环。
我的代码是:
var p = 5;
var values = [];
while(p<10){
p=p+(Math.random() - 0.5);
values.push(p);
p++;
}
console.log(values);
但是在线代码编辑器说这是不正确的,这就是它的意思:错误:数组中缺少596个值。
谁能帮我?我怎么了也许使用while循环是错误的方式?
在此先感谢您的帮助。
最佳答案
您错过了检查p<0
的情况,否则代码运行正常,并且p++
是不必要的,除非@Nkhangweni指出,否则它消除了无限循环的可能性。
var p = 5;
var values = [];
while (p < 10 && p > 0) {
p = p + (Math.random() - 0.5);
values.push(p);
}
console.log(values);