我有一个简单的基于模的脚本,该脚本以3位和6位数字运行到else
。这些数字在某些情况下也应该适合这些数字。
function caffeineBuzz(n){
var returnvalue;
if (n % 3 == 0)
returnvalue = "Java";
if (n % 3 == 0 && n % 4 == 0)
returnvalue = "Coffee";
if (n % 3 == 0 && n % 2 == 0)
returnvalue = "Java" + "Script"
if (n % 4 == 0 && n % 2 == 0)
returnvalue = "Coffee" + "Script"
else
returnvalue = "mocha_missing!"
return returnvalue;
}
n
代表输入,它是一个整数,返回值应该是一个字符串。更新:
最具体->不太具体的方法对我有所帮助,但是在某些情况下,它返回的值有误。
function caffeineBuzz(n){
var returnvalue;
if (n % 4 == 0)
returnvalue = "Coffee" + "Script"
else if (n % 3 == 0 && n % 4 == 0)
returnvalue = "Coffee";
else if (n % 3 == 0 && n % 2 == 0)
returnvalue = "Java" + "Script"
else if (n % 3 == 0)
returnvalue = "Java";
else
returnvalue = "mocha_missing!"
return returnvalue;
}
最佳答案
此功能是基于注释的答案猜测。
function caffeineBuzz(n){
//Storing n's modulos to not calculate them multiple times
var mod3 = (n % 3 == 0)
var mod4 = (n % 4 == 0);
var mod2 = mod4 || (n % 2 == 0);
//Maybe: return (mod3 ? ("Java" + (mod4 ? "Coffee" : "")) + (mod2 ? "Script" : "") : "mocha_missing!");
return (mod3 ? ((mod4 ? "Coffee" : "Java") + (mod2 ? "Script" : "")) : ("mocha_missing!"));
}
关于javascript - 简单的模数测试仪,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38242272/