我知道什么是阶乘。例如5! = 5x4x3x2x1 任何人都可以指导代码通过递归计算数字的以下内容。 例如:5,如何通过递归计算5x4x3x2x1x2x3x4x5
答案 0 :(得分:1)
这是解决问题的代码。在最后一行中,我将n
与另一个n
相乘,因为我需要将它乘以两次,但我保持堆栈中的乘法并在我调用递归时将其挂起。因此,在最后我得到的结果为5*4*3*2*1*2*3*4*5=14400
。
public class Test{
public static void main(String... args){
int f=5;
System.out.println(fact(f));
}
public static int fact(int n){
if(n==1) return n;
return n*fact(n-1)*n;
}
}