PHP 阶乘程序
一个数字n的阶乘定义为1到n(包括1和n)的所有数字的乘积。
例如,
4! = 4*3*2*1 = 24
6! = 6*5*4*3*2*1 = 720
注意:
- 阶乘用n!表示,仅适用于正整数。
- 0的阶乘始终为1。
求一个数的阶乘最简单的方法是使用循环。
PHP中有两种求阶乘的方法:
- 使用循环
- 使用递归方法
逻辑
- 取一个数。
- 取递减的正整数。
- 将它们相乘。
PHP中的阶乘
下面是使用for循环计算4的阶乘的示例。
示例:
<?php
num = 4;factorial = 1;
for (x=num; x>=1;x--)
{
factorial =factorial * x;
}
echo "Factorial ofnum is $factorial";
?>
输出:
使用PHP中的表单计算阶乘
下面的程序展示了一个表单,通过它你可以计算任意数字的阶乘。
示例:
<html>
<head>
<title>Factorial Program using loop in PHP</title>
</head>
<body>
<form method="post">
Enter the Number:<br>
<input type="number" name="number" id="number">
<input type="submit" name="submit" value="Submit" />
</form>
<?php
if(_POST){fact = 1;
//getting value from input text box 'number'
number =_POST['number'];
echo "Factorial of number:<br><br>";
//start loop
for (i = 1; i <=number; i++){fact = fact *i;
}
echo $fact . "<br>";
}
?>
</body>
</html>
输出:
使用递归在PHP中计算阶乘
展示使用递归方法计算6的阶乘。
示例:
<?php
function fact (n)
{
if(n <= 1)
{
return 1;
}
else
{
return n * fact(n - 1);
}
}
echo "Factorial of 6 is " .fact(6);
?>
输出: