1. 程式人生 > 其它 >Java習題1|古典問題求兔子對數

Java習題1|古典問題求兔子對數

  • 題目:古典問題:有一對兔子,從出生後第3個月起每個月都生一對兔子,小兔子長到第三個月後每個月又生一對兔子,假如兔子都不死,問每個月的兔子對數為多少?
  • 解題思路: 一月 1對, 2月 1對,3月 2對,4月 3對,5月5對,6月8對,7月13對,8月 21只

原始碼演示:

public static void main(String[] args) {
    System.out.print("請輸入你想知道的兔子數量的月份:");
    Scanner scanner=new Scanner(System.in);
    int n=scanner.nextInt();//獲取輸入的整數
    System.out.println(test(n));
    System.out.println(fun(n));
    scanner.close();
}


/**
 * 菜鳥寫法
 */
public static int test(int i){
    int tot = 0;
    int a = 0;
    int b = 1;
    for(int j = 0;j<i; j++){
        tot = a+b;
        a = b;
        b = tot;
    }
    return a;
}

/**
 * 大神寫法
 */
private static int fun(int n){
    if(n==1 ||n==2)
        return 1;
    else
        return fun(n-1)+fun(n-2);
}

編譯結果:

在這裡插入圖片描述