[Java利用斐波那契数列求:兔繁殖数目问题]
学了Java的基础部分,想找点题目练练手。有兴趣的朋友可以一起哟!(等做完后也会整理成文件,免费给大家下载的)由于本人也在学习的路上,所以仅供参考。
话不多说,今天先附上我的第一个题(题目在源码部分,源码注释已经足够详细,如实在有不明白的,可联系我:qq:2530318393,或者留言,另外:写作不易,转载请声明所属~~~~~~~~):
/**
* @program: rabbitNum
* @description: 程序入口
* @author: Mr.XiaoShi
* @create: 2020-08-27 16:30
**/
/**
* 题目:古典问题:有一对兔子,从出生后第 3 个月起每个月都生一对兔子,小兔子长到第三
* 个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
* 这是一个菲波拉契数列问题
* 波拉契数列的一些规律:
* 1、这个数列从第三项开始,每一项都等于前两项之和
* 2、从第二项开始,每个奇数项的平方都比前后两项之积多1,每个偶数项的平方都比前后两项之积少(注:奇数项和偶数项是指项数的奇偶)
* 3、斐波那契数列(f(n),f(0)=0,f(1)=1,f(2)=1,f(3)=2……)的其他性质:
* 1.f(0)+f(1)+f(2)+…+f(n)=f(n+2)-1
* 2.f(1)+f(3)+f(5)+…+f(2n-1)=f(2n)
* 3.f(2)+f(4)+f(6)+…+f(2n) =f(2n+1)-1
* 4.[f(0)]^2+[f(1)]^2+…+[f(n)]^2=f(n)·f(n+1)
* 5.f(0)-f(1)+f(2)-…+(-1)^n·f(n)=(-1)^n·[f(n+1)-f(n)]+1
* 6.f(m+n-1)=f(m-1)·f(n-1)+f(m)·f(n) 7.[f(n)]^2=(-1)^(n-1)+f(n-1)·f(n+1)
* 8.f(2n-1)=[f(n)]^2-[f(n-2)]^2
* 9.3f(n)=f(n+2)+f(n-2)
* 10.f(2n-2m-2)[f(2n)+f(2n+2)]=f(2m+2)+f(4n-2m) [ n〉m≥-1,且n≥1])
**/
import java.util.Scanner;
/**
* 月份:1-2 3 4 5 6
* 孕兔:0 2(1对) 2 (1对) 4(2对) 6(3对)
* 数量:2 2+2 4+2 6+2+2 10+6
* */
public class Prog