实现阶乘计算功能
输入一个整数n,计算并输出他的阶乘
给了两种方法,一种递归,一种循环
package com.company;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// write your code here
System.out.println(fac(5));//求5的阶乘,递归方法
System.out.println(fac2(5));//求5的阶乘,循环方法
// 求任意整数的阶乘
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个整数:");
int num = scanner.nextInt();
System.out.println(num+"!="+fac(num));//递归方法
System.out.println(num+"!="+fac2(num));//循环方法
}
// 递归求阶乘
private static long fac(int num){
if (num ==0|| num ==1){
return 1;
}
return num*fac(num-1);
}
// 循环求阶乘
private static long fac2(int num){
int sum=1;
for(int i=num;i>0;i--){
sum*=i;
}
return sum;
}
}