如何用Java程序编程,最好讲解一下。题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对

Python017

如何用Java程序编程,最好讲解一下。题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对,第1张

这道题目考察的是运用递归(数列)的思路去解决问题。

假设到第24个月,示例代码如下:

public class woo {

public static void main(String args[]) {

System.out.println(fib(24))

}

private static int fib(int n) {

if (n == 1 || n == 2) {

return 1

} else {

return fib(n - 1) + fib(n - 2)

}

}

}

扩展资料

斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……。

在数学上,斐波纳契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)在现代物理、准晶体结构、化学等领域,斐波纳契数列都有直接的应用,为此,美国数学会从1963年起出版了以《斐波纳契数列季刊》为名的一份数学杂志,用于专门刊载这方面的研究成果。

参考资料:

百度百科:斐波那契数列

百度百科:递归函数

public class Test {//用递归法计算兔子的规律

static long fib(int x){

if(x>2) return (fib(x-1)+fib(x-2))

else return 1

}

public static void main(String[] args) {

for(int i=1i<=24i++){

long n=fib(i)

//算出的是对数.要算总数的法,*2就行

System.out.println("第"+i+"个月有兔子对数为"+n)

}

}

}