您的位置:首页 > 编程语言 > Java开发

java古典问题:兔子生兔子

2017-03-19 11:38 239 查看
有一对小兔子,从出生后第3个月起每个月都生一对小兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少?

public class Rabbit {

public static int Num(int month) {
int sum = 0;
if (month == 1 || month == 2)// 第一个月和第二个月兔子对数都为1
sum = 1;
if (month >= 3) {
sum = Num(month - 1) + Num(month - 2); // 第三个月开始每月兔子对数等于前两月兔子对数之和

}
return sum;

}

public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println(Rabbit.Num(5));
}

}


第一月兔子对数:1

第二月兔子对数:1

第三月兔子对数:2(第一对小兔子从出生后第3个月起每个月都生一对小兔子)

第四月兔子对数:3

第五月兔子对数:5(第三个“3个月”的开始)

第六月兔子对数:8

第……月兔子对数:……

即:

1 1 2 3 5 8 13 21……
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java
相关文章推荐