题目
假如有一对兔子,从出生后第三个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子。
假如兔子都不死,请问第n个月后的兔子有多少对?
分析
1月份············兔子个数:1
2月份············兔子个数:1
3月份············兔子个数:2
4月份············兔子个数:3
5月份············兔子个数:5
6月份············兔子个数:8
7月份············兔子个数:13
······
实际上就符合斐波那契数列。
代码
import java.util.Scanner;
public class RabbitTest {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.print("请输入一个月份:");
//变量n,表示第n个月
int n = scan.nextInt();
int total = RabbitNumber.rabbit(n);
System.out.println(n + "月的时候兔子的总对数:" + total);
}
}
public class RabbitNumber {
//这个rabbit方法是用来计算第n个月的时候兔子的总对数
public static int rabbit(int n){
if(n == 1 || n == 2){
//递归结束条件
return 1;
}
return rabbit(n - 1) + rabbit(n - 2);
}
}