用遞迴演算法實現n的階乘
阿新 • • 發佈:2019-01-01
遞迴是一種計算演算法,程式呼叫自身的程式設計技巧成為遞迴,一般來說遞迴需要有邊界條件,當不滿足邊界條件時一直執行遞迴,直到滿足邊界條件,遞迴返回
package DiGui;
/**
* 鍵盤錄入一個整數n 求n的階乘
*/
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
//建立Scanner物件
Scanner sc=new Scanner(System.in);
//把鍵盤錄入的n賦值給n
int n=sc.nextInt();
//呼叫diGui方法 輸出結果
System.out.println(DiGui.diGui(n));
}
}
package DiGui;
/**
* 用發遞迴實現n的階乘
* 邊界條件
*
*/
public class DiGui {
public static double diGui(int n){
//0的階乘是0
if(n==0){
return 1;
}
//這裡的遞迴條件是n=1
if(n==1){
return n;
}
//如果n不為1就一呼叫這個方法直到n為1
else{
return n*diGui(n-1);
}
}
}