2017-09-16 65 views
-2

我真的是新手,所有这一切,我在课堂上学习它。我的任务是写一个Else/If循环,我们显示1-100。如果整数可以被3个显示“play”整除,如果可以被4整除显示“ball”,并且如果3和4可以整除显示“Play Ball”,则其他任何值都只是整数。 我有我的代码在这里工作,但我不能让我的3和4显示“播放球”,除非我自己运行它。希望是有道理的,这是我有:其他/如果循环JavaScript

for (var i = 1; i <= 100; i++) { 

    if (i % 3 === 0) { 
    console.log('Play'); 
    } else if (i % 4 === 0) { 
    console.log('Ball'); 
    } else if (i % 3 === 0 && i % 4 === 0) { 
    console.log('Play Ball'); 
    } else { 
    console.log(i); 
    } 
} 
+0

首先检查您的AND条件! – Li357

+0

Fizz-Buzz再次袭击! – tadman

+0

请注意您的条件的顺序。如果我%3,我们记录'玩',我们就完成了。如果我%4,我们记录'球',我们完成了。 – stealththeninja

回答

1

你只需要这个i % 3 === 0 && i % 4 === 0状态移动到顶端:

for (var i = 1; i <= 100; i++) { 
 

 
    if (i % 3 === 0 && i % 4 === 0) { 
 
    console.log('Play Ball'); 
 
    } else if (i % 3 === 0) { 
 
    console.log('Play'); 
 
    } else if (i % 4 === 0) { 
 
    console.log('Ball'); 
 
    } else { 
 
    console.log(i); 
 
    } 
 
}

0

3和4显示

上述声明指,当BOTH条件满足那么只需要执行一些任务。在这种情况下,你需要使用&&

if ((i % 3 === 0) && (i % 4 === 0)) { 
    console.log('Play Ball'); 
    } 

当使用else和/或else if

让我们举个例子,你有一个数字,它由3是不可分和4个和你不关心这个数字。然后,您只需使用else即可将所有这些类别归入该类别。

现在,还有另外一种情况,当你输入数字时,它又不能被3和4整除。但是,如果它只能被3或4整除,那么你可能会想看到。然后,你使用else if其中你可以把条件检查。

if ((i % 3 === 0) && (i % 4 === 0)) { 
    console.log('Play Ball'); 
    } 
    else if (i % 3 === 0) { 
    console.log('Play'); 
    } 
    else if (i % 4 === 0) { 
    console.log('Ball'); 
    } 
+0

@downvoter如果我错过了任何事情,我一定会努力改进我的答案。 – Ravi

1

因为第一if语句总是为真时,第三条语句(与& &)将是真实的,你永远不会使它的第三条语句。尝试重新排序为这样:

for (var i = 1; i <= 100; i++) { 

     if (i % 3 === 0 && i % 4 === 0) { 
     console.log('Play Ball'); 
     } else if (i % 4 === 0) { 
     console.log('Ball'); 
     } else if (i % 3 === 0) { 
     console.log('Play'); 
     } else { 
     console.log(i); 
     } 

} 
+0

当数字可以被3和4整除时,他们需要'打球'! – Nisarg

0

您可以通过两个3和4移动支票可分到顶部:

for (var i = 1; i <= 100; i++) { 
    if (i % 3 === 0 && i % 4 === 0) { 
    console.log('Play Ball'); 
    } else if (i % 3 === 0) { 
    console.log('Play'); 
    } else if (i % 4 === 0) { 
    console.log('Ball'); 
    } else { 
    console.log(i); 
    } 
}