我有代码,如果显示(15)我想要的结果是1,2,3,4,5,6,8,9,10,12,15,16,18,20,24请帮帮我< / p>
function daz(num){
for(var i = 1; i < num; i++){
if(num % 7 === 0 || num % 11 === 0 || num % 14 === 0){return false}
if(num % 2 === 0 || num % 3 === 0 || num % 4 ===0 || num % 5 === 0){
return true;
}
}
}
function display(n){
var zumba = [1];
for(var i = 1; i<=n;i++){
if(daz(i)){
zumba.push(i);
}
}
document.write(zumba);
}
display(15)
&#13;
答案 0 :(得分:-2)
我认为您要打印使daz
函数返回true的前15个数字。
因此,不需要在15个数字上运行循环,而是需要运行循环,直到找到15个这样的数字。这是正确的代码:
function daz(num){
for(var i = 1; i < num; i++){
if(num % 7 === 0 || num % 11 === 0 || num % 14 === 0){return false}
if(num % 2 === 0 || num % 3 === 0 || num % 4 ===0 || num % 5 === 0){
return true;
}
}
}
function display(n){
var zumba = [1];
var count = 1;
for(var i = 1; count < n;i++){
if(daz(i)){
zumba.push(i);
count++;
}
}
document.write(zumba);
}
display(15)