本帖最后由 maxwell247 于 2015-9-27 10:13 编辑
从网上找到一份编程练习题,我决定将里面的题目全都做一遍。
/**
题目:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,
假如兔子都不死,问每个月的兔子总数为多少?
*/
我画的分析表格。(横着看)
/*
经过分析发现,兔子总数为 1,1,2,3,5,8,13,21,34... (第三个数是前两个数之和),这也就是斐波那契数列。
*/
class RabbitDemo{
public static void main(String[] args) {
// 输出24个月之内,兔子的总数
for (int i=1;i<=24;i++){
System.out.println("第"+i+"个月兔子的总数为:"+function(i));
}
}
/**
求第n个月兔子的总数
@param n月份
@return n月时兔子的总数
*/
public static int function(int n){
if ( n==1 || n==2){
return 1;
}else{
return function(n-1)+function(n-2);
}
}
}
|
|