编写一个js函数用来求n的阶乘

JavaScript015

编写一个js函数用来求n的阶乘,第1张

function factorial(n){

    return n > 1 ? n * factorial(n-1) : 1

}

factorial(5)//120

以上函数可以求简单的n的阶乘

由于使用的是原生的乘法,所以计算范围有限

主要使用了递归的方式进行计算,是求阶乘的常用方法之一

while(true){

    var obj = prompt("输入一个整数:","")

    if(/^\+?\d+$/.test(obj)){

        var sum = 0

        for(var i = 1 i <= obj i++){

            var x = 1

            for(var j = 1 j <= i j++){

                x *= j

            }

            sum += x

        }

        alert("1的阶乘到"+obj+"的阶乘的和: " + sum)

        break

    }else{

        continue

    }

}

var n = parseInt(window.prompt("imput"))//弹出输入框,输入需要计算的数

var mul = 1//定义一个开始变量

for(var i = 0 i < n i++){

    mul *= 2//等于mul=mul*2

}//执行n次*2,1*2*2*2*...*2,完成计算

document .write(mul)//输出结果

//这是阶乘?我数学不好别骗我