如何获得 JavaScript 中数字的阶乘?
How to get Factorial of number in JavaScript?
我正在学习 Java 脚本,并且有一个关于获取用户输入的数字的阶乘的练习,但出于某种原因我总是得到答案 = 1
这是我的代码:
<SCRIPT>
function factorial(num){
for (n=1; n<=num; n++){
return fact*n;
}
}
var myNum, fact;
myNum = parseFloat(window.prompt('Enter positive integer : ',''));
fact = 1;
document.write('the factorial of the number is = '+ factorial(myNum));
</SCRIPT>
图片代码(以后请包含实际代码,不是代码截图)returns fact
立即:
for ( n = 1; n <= num; n++ ) {
return fact * n;
}
因为 n
从 1
开始。
你想要的是将fact
包含在函数中,并在循环进行时将其相乘,然后 return:
function factorial(n) {
var fact = 1;
for ( n = 2; n <= num; n++ ) {
fact = fact * n;
}
return fact;
}
这是 returning 1 的原因是因为在上面的循环中,您 return 第一次迭代的值,所以 n 永远不会大于 1。
我正在学习 Java 脚本,并且有一个关于获取用户输入的数字的阶乘的练习,但出于某种原因我总是得到答案 = 1
这是我的代码:
<SCRIPT>
function factorial(num){
for (n=1; n<=num; n++){
return fact*n;
}
}
var myNum, fact;
myNum = parseFloat(window.prompt('Enter positive integer : ',''));
fact = 1;
document.write('the factorial of the number is = '+ factorial(myNum));
</SCRIPT>
图片代码(以后请包含实际代码,不是代码截图)returns fact
立即:
for ( n = 1; n <= num; n++ ) {
return fact * n;
}
因为 n
从 1
开始。
你想要的是将fact
包含在函数中,并在循环进行时将其相乘,然后 return:
function factorial(n) {
var fact = 1;
for ( n = 2; n <= num; n++ ) {
fact = fact * n;
}
return fact;
}
这是 returning 1 的原因是因为在上面的循环中,您 return 第一次迭代的值,所以 n 永远不会大于 1。