如何在JavaScript中查找数字的阶乘


如何在JavaScript中找到数字的阶乘?

阶乘是所有正降序整数的乘积。 n的阶乘由n!表示。例如 –

4! = 4 * 3 * 2 * 1 = 24

5! = 5 * 4 * 3 * 2 * 1 = 120

来4的发音为“ 4阶乘”,也称为“ 4砰”或“ 4尖叫”。

在本文中,我们将使用JavaScript计算数字的阶乘。在这里,我们使用两种方法来查找阶乘。第一个是迭代方法,另一个是递归方法。

使用迭代方法

在这里,我们迭代数字序列上的循环以获得给定数字的阶乘。使用这种方法,内存消耗少于递归实现。但是代码比递归方法更长。

让我们看一个相同的例子。

在此示例中,有一个文本字段,需要一个数字和一个按钮,该按钮为我们提供了所输入数字的阶乘。我们必须在给定的文本字段中输入数字以找到该数字的阶乘。然后我们需要单击名为Factorial的给定按钮以获取结果。

如果我们输入一个负数,则程序将计算阶乘0,即1。

<!DOCTYPE html>
<html>
<head>
</head>
<body style = "text-align: center; font-size: 20px;">
<h1> Welcome to the javaTpoint.com </h1>
Enter a number: <input id = "num">
<br><br>
<button onclick = "fact()"> Factorial </button>
<p id = "res"></p>
<script>
function fact(){
var i, num, f;
f = 1;
num = document.getElementById("num").value;
for(i = 1; i <= num; i++)  
{
f = f * i;
}
i = i - 1;  
document.getElementById("res").innerHTML = "The factorial of the number " + i + " is: " + f ;
}
</script>
</body>
</html>

输出量

执行完上述代码后,输出将为-

输入数字并单击给定的按钮后,输出将为-

现在,我们将看到如何使用JavaScript中的递归方法来计算阶乘。

使用递归方法

在这种方法中,我们使用递归来计算数字的阶乘。在这里,我们一次又一次调用相同的函数以获得阶乘。使用递归,我们不必编写比迭代方法少的代码。

现在,我们将看到一个使用JavaScript递归查找数字阶乘的示例。

这里有一个函数fact(),它接受参数num。这是我们需要计算阶乘的数字。当num的值为0时,该函数返回1。

在输出中,我们将看到一个需要数字的文本字段和一个按钮,该按钮为我们提供了所输入数字的阶乘。我们必须在给定的文本字段中输入数字以找到该数字的阶乘。然后,我们需要单击名为Factorial的给定按钮以获取结果。

<!DOCTYPE html>
<html>
<head>
</head>
<body style = "text-align: center; font-size: 20px;">
<h1> Welcome to the javaTpoint.com </h1>
Enter a number: <input id = "number">
<br><br>
<button onclick = "fact1()"> Factorial </button>
<p id = "res"></p>
<script>
function fact(num) 
{
if (num == 0) {
return 1;
}
else {
return num * fact( num - 1 );
}
}
function fact1()
{
var num = document.getElementById("number").value;
var f = fact(num);
document.getElementById("res").innerHTML="The factorial of the number " + num + " is: " + f ;
}
</script>
</body>
</html>

输出量

执行完上述代码后,输出将为-

输入数字并单击给定的按钮后,输出将为-

Made with ❤️ in Chengdu. Copyright reserved 2019-2022.

蜀ICP备20006366号-1