本帖最後由 李泳霖 於 2022-1-28 13:41 編輯
利用函式遞迴法設計一程式, 讓使用者輸入一個階層數, 電腦計算出答案.
例如: 輸入 5 其算式為 1*2*3*4*5 因此答案是 120
輸入 3 其算式為 1*2*3 因此答案是 6
- import java.util.Scanner;
- public class Ch20 {
- static int f(int n)
- {
- if(n==1)
- return 1;
- else
- return n*f(n-1);
- }
- /*
- f(5)
- =5*f(4)
- =5*4*f(3)
- =5*4*3*f(2)
- =5*4*3*2*f(1)
- =5*4*3*2*1
- */
- public static void main(String[] args) {
- Scanner s=new Scanner(System.in);
- int n;
- System.out.print("請輸入階層運算的值? ");
- n=s.nextInt();
- System.out.println(n+"階層的值為"+f(n));
- }
- }
複製代碼 |