/*
一对兔子,从出生后第三个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,
假如兔子都不死,问第二十个月的兔子对数为多少?
1 1 2 3 5 8 13
1 1 1 1 1 1 11 1 1 1 11 1 1 11 1 11 1 11 11 11 111111*/public class gPractice07 {public static void main(String[] args) {//定义长度为20的数组int[] arr = new int[20];arr[0] = 1;arr[1] = 1;// arr[2] = arr[0] + arr[1];// arr[3] = arr[1] + arr[2];// arr[4] = arr[2] + arr[3];// arr[5] = arr[3] + arr[4];for (int i = 2; i < arr.length; i++) {arr[i] = arr[i - 2] + arr[i - 1];}System.out.println("第二十个月兔子有:" + arr[19] + "对");//调用递归实现斐波那契数列int count = fibonacci(20);System.out.println("第二十个月兔子有:" + count + "对");}//递归实现不死神兔public static int fibonacci(int month) {if (month == 1 || month == 2) {return 1;} else {return fibonacci(month - 1) + fibonacci(month - 2);}}
}