import java.util.Scanner;
/*
* @description:求N的阶乘
*
*
*/
public class Factorial {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner console = new Scanner(System.in);
int a = console.nextInt();
System.out.println(a + "的阶乘是" + recursion(a));
}
private static int recursion(int a) {
// TODO Auto-generated method stub
int result = 0;
if(a==1)
return 1;
if(a>1){
result = a*recursion(a-1);
}
return result;
}
}
算法较为简单,但次代码没考虑int类型超出范围的问题,例如不能求出100!【递归经典题目】求整数N的阶乘。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.