古典问题:兔子数量的逻辑实现-----------------------博




public class 类名 {
/古典问题:兔子
分析,每个月份的兔子数(单位:对)是:
1
1
2(T1生了T2)
3(T1生了T3)
5(T1生了T4,T2生了T5)
8(T1生了T6,T2生了T7,T生了T8)
13(T4、T5也加入了生兔子大军) 会发现从第三个月开始每月的数量为前边两个月的和*/
public static void main(String[] args) {
int month=12;//输入月份数
for (int i=1;i<=month;i++){
      int sum = f(i);//调用f函数,并接收返回值为每个月的数量
  System.out.println("第 " + i + " 月兔子的数量为: " + sum+"对");
}
}
     public static int f(int a){//f函数用来计算每个月的兔子总数,利用递归
if((a==1)||(a==2)){//前两个月还没有生,都为一对
return 1;
}else{
   return f(a-1)+f(a-2);//从第三个月起,后面的兔子总数都等于前面两个月的兔子总数之和。
}
}
}

你可能感兴趣的:(古典问题:兔子数量的逻辑实现-----------------------博)