我为作业编写了所需的while循环,但出现错误。
var x = 1 ;
while (x <= 20) {
if( x % 3 === 0 ) {
console.log( "Julia" );
}
else if( x % 5 === 0 ) {
console.log( "James" );
}
else if( x % 3 === 0 && x % 5 === 0 ) {
console.log( "JuliaJames" );
}
else{
console.log(x);
}
x++;
}
........
这是路线
方向: 编写一个while循环:
通过数字1到20 如果数字可被3整除,则打印“ Julia” 如果数字可被5整除,则打印“ James” 如果数字可以被3和5整除,则打印“ JuliaJames” 如果数字不能被3或5整除,请打印数字
运行代码时,范围内的每个数字要么保留为数字,要么由单词“ James”,“ Julia”或“ JuliaJames”代替。
我正在提交上面编写的代码,但被告知“验证您的while循环是否产生正确的输出”
答案 0 :(得分:2)
您需要先检查x%5 && x%3,然后再检查条件中x%3之前的x%5。否则,也是x%5(例如15)的x%3会命中x%3,但永远不会进入x%5 && x%3或x%5有条件的情况。
Kernel.exit
答案 1 :(得分:0)
最后一个if语句永远不会为真,因为它所需要的两个条件(mod 3和mod 5)触发了上述if语句,因此满足这些要求的任何值永远都不会达到如此之高。尝试移动最后一个if语句(JuliaJames),因此它是第一个if语句,应该可以解决问题。