我想知道如何在php中打印阶乘。我试着在谷歌上搜索,但找不到有确凿证据的结果(Php Code)。我觉得这很无聊,我对此不满意。
for($c=3; $c>=1;$c--){
for($d=$c; $d>=1; $d--){
echo $c;
}// for ends
echo "<br />";
}// for ends
输出333 22 1
我想把这个打印成输出:
5 * 4 * 3 * 2 * 1
对于计算阶乘,
function factorial($in) {
return array_product(range(1, $in));
}
并像一样使用它
echo factorial(5);
如果要打印阶乘,
function factorial_print($in) {
return implode(' * ', array_reverse(range(1, $in)));
}
并像一样使用它
echo factorial_print(5);
计算阶乘非常简单,也不需要递归:
function factorial($x) {
$r = 1;
for ($i = 2; $i <= $x; ++$i) {
$r *= $i;
}
return $r;
}
echo factorial(10), PHP_EOL;
试试这个
function factorial($number) {
if ($number < 2) {
return 1;
} else {
return ($number * factorial($number-1));
}
}
使用PHP内置的以下函数。
$fact1 = gmp_fact(5); // 5 * 4 * 3 * 2 * 1
echo gmp_strval($fact1) . "'n";
有关更多信息,请参阅此处