public class FactorialDemo {
//求一个数的阶乘
public static void main(String[] args) {
System.out.println("方法1:"+factorial1(10));
System.out.println("方法2:"+factorial2(10));
}
//方法1:递归
public static int factorial1(int num){
if(num==1){
return 1;
}
else{
return num*factorial1(num-1);
}
}
//方法2:循环
public static int factorial2(int num){
int fa = 1;
if(num==1){
return 1;
}else{
for(int i=2;i<=num;i++){
fa*=i;
}
return fa;
}
}
}
输出结果:
方法1:3628800
方法2:3628800