PHP 常用例子

正整数的阶乘是所有小于或等于该数字的正整数的乘积。

数字的阶乘n = n! = n(n-1)(n-2)...1

例如:

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

4! = 4 × 3 × 2 × 1 = 24

方法 1:使用递归方法

在下面的示例中,名为 factorial()的递归函数用于计算数字的阶乘。

<?php
function factorial($x) {
  if ($x == 0 || $x == 1)
    return 1;
  else 
    return $x*factorial($x-1);    
}

echo "10! =  ".factorial(10)."\n";
echo "6! =  ".factorial(6)."\n";
?> 

上面的代码将给出以下输出:

10! =  3628800
6! =  720 

方法 2:使用迭代方法

数字的阶乘也可以使用迭代方法计算。

<?php
function factorial($x) {
  $finalnum = 1;
  for($i = $x; $i > 0; $i--) {
    $finalnum = $finalnum * $i;
  }
  return $finalnum;  
}

echo "10! =  ".factorial(10)."\n";
echo "6! =  ".factorial(6)."\n";
?> 

上面的代码将给出以下输出:

10! =  3628800
6! =  720 

方法3:使用三元运算符

在下面的示例中,使用三元运算符计算数字的阶乘。

<?php
function factorial($x) {
  $y = ($x == 0 || $x == 1)? 1 : $x*factorial($x-1);
  return $y;  
}

echo "10! =  ".factorial(10)."\n";
echo "6! =  ".factorial(6)."\n";
?> 

上面的代码将给出以下输出:

10! =  3628800
6! =  720