PHP函数计算阶乘数

数字的阶乘定义为该数字与所有小于该数字的数字的乘积。因此,如果您采用数字4,则该数字的阶乘为24或1 x 2 x 3 x 4。

阶乘对于许多应用程序很有用,例如,在计算一组对象可以以不同方式组合多少次时。

使用以下PHP函数计算任何给定数字的阶乘。它首先要做的是确保数字大于1,因为数字1的阶乘为1。

function factorial($number){
 $result = 1;
 if($number > 1){
  for($i = 2; $i <= $number; $i++){
   $result *= $i;
  }
 }
 return $result;
}

该函数使用* =运算符工作,该运算符在左侧和右侧之间进行计算(在这种情况下为乘法),并将结果存储在左侧。该运算符非常类似于+ =运算符,并且以相同的方式工作。

替代方法是GMP功能gmp_fact()。GMP是一组数学函数,可用于执行一些特殊的操作,例如将非常大的数字加在一起。自4.0.4版以来,它已成为PHP核心的一部分。

请注意,阶乘数会很快变得非常大。例如,数字50的阶乘是30,414,093,201,713,375,576,366,966,406,747,986,832,057,064,836,514,787,179,557,289,984。如果不使用GMP函数,则无法计算出如此大的数字,不仅如此,它还需要一段时间才能计算出来。