1. 程式人生 > >用遞迴演算法實現n的階乘

用遞迴演算法實現n的階乘

遞迴是一種計算演算法,程式呼叫自身的程式設計技巧成為遞迴,一般來說遞迴需要有邊界條件,當不滿足邊界條件時一直執行遞迴,直到滿足邊界條件,遞迴返回

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);
        }
    }

}