我想知道如何在php中打印factorial。我试图在Google上搜索,但无法找到具有可靠证明示例(Php Code)的结果。我发现这个forloop,我对此并不满意。
for($c=3; $c>=1;$c--){
for($d=$c; $d>=1; $d--){
echo $c;
}// for ends
echo "<br />";
}// for ends
Out Put 333 22 1
我希望将其打印为输出:
5 * 4 * 3 * 2 * 1
答案 0 :(得分:2)
计算阶乘,
<TreeView ItemsSource="{Binding ClassesWithPupils, UpdateSourceTrigger=PropertyChanged}">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding}">
<Label Content="{Binding Class.Name}"/>
<HierarchicalDataTemplate.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Pupils}">
<Label Content="{Binding Name}"/>
</HierarchicalDataTemplate>
</HierarchicalDataTemplate.ItemTemplate>
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
并使用它,
String className = "UsernamePart";
Class<?> genericClass = Class.forName(className);
Class arrayClass = java.lang.reflect.Array.newInstance(genericClass, 0).getClass();
Object[] array = (Object[]) new Gson().fromJson(input, arrayClass);
List parts = com.google.common.collect.Lists.newArrayList(array);
<小时/> 如果要打印factorial,
function factorial($in) {
return array_product(range(1, $in));
}
并使用它,
echo factorial(5);
答案 1 :(得分:1)
计算阶乘非常简单,也不需要递归:
function factorial($x) {
$r = 1;
for ($i = 2; $i <= $x; ++$i) {
$r *= $i;
}
return $r;
}
echo factorial(10), PHP_EOL;
答案 2 :(得分:0)
试试这个
function factorial($number) {
if ($number < 2) {
return 1;
} else {
return ($number * factorial($number-1));
}
}
答案 3 :(得分:0)
使用PHP内置的以下功能。
$fact1 = gmp_fact(5); // 5 * 4 * 3 * 2 * 1
echo gmp_strval($fact1) . "\n";
有关详情,请参阅 HERE