返回列表 發帖

遞迴

  1. // 這是一個簡單的Java應用程式範例
  2. import java.io.*;//for 鍵盤輸入
  3. import java.lang.Math;
  4. import java.util.ArrayList;

  5. public class Hello
  6. {                     
  7.         public static void main(String args[])throws IOException
  8.         {
  9.              System.out.println("請輸入一個整數: ");

  10.              BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
  11.              String bufstr = br.readLine();
  12.                
  13.              int num = Integer.parseInt(bufstr);                         
  14.                          
  15.                         //System.out.println("階層值: " + num + "! = " + f(num));  
  16.                         System.out.println("費式數列值: " + "fab(" + num + ") = " + fab(num));  
  17.             
  18.         }
  19.                
  20.                
  21.                
  22.                 //求費式數列
  23.                 public static int fab(int n)
  24.                 {
  25.                         if(n > 2)
  26.                         {
  27.                                 return fab(n-1) + fab(n-2);
  28.                         }
  29.                         else //n==2 or n ==1
  30.                         {
  31.                                 return 1;
  32.                         }
  33.                 }
  34.                
  35.                 //求N階層
  36.                 public static int f(int n)
  37.                 {
  38.                         if(n > 1)
  39.                         {
  40.                                 return n*f(n-1);
  41.                         }
  42.                         else
  43.                         {
  44.                                 return 1;
  45.                         }
  46.                 }
  47.                
  48.                
  49.                
  50. }
複製代碼

  1.                 //Hanoii
  2.                 public static void Hanoi(int n, String src, String des, String tmp)
  3.                 {
  4.                         if(n > 1)
  5.                         {
  6.                                 Hanoi(n-1,src,tmp,des);
  7.                                 System.out.println("move" + src + "to" + des);
  8.                                 Hanoi(n-1,tmp,des,src);
  9.                         }
  10.                         else
  11.                         {
  12.                                 System.out.println("move" + src + "to" + des);
  13.                         }
  14.                 }
  15.                
複製代碼

TOP

返回列表