首页 > 分享 > 斐波那契数列(兔子繁殖)问题

斐波那契数列(兔子繁殖)问题

斐波那契数列(兔子繁殖)问题

最新推荐文章于 2024-10-11 21:51:08 发布

李歘歘 于 2019-07-19 16:52:57 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

算法描述:

古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月 后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?(输出前20个月的数量)

输出格式:

输出20个数字,

思路:

斐波那契数列(Fibonacci sequence),又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(n)=F(n-1)+F(n-2)(n>=3,n∈N*)。就是前两个数的和等于第三个数的值。

程序代码:

非递归方式:

#include<stdio.h>

int main(){

int n1,n2;

n1=n2=1;

for(int i=0;i<10;i++){

printf("%dn",n1);

printf("%dn",n2);

n1=n1+n2;

n2=n2+n1;

}

return 0;

}

 递归方式:

#include<stdio.h>

int Fibon(int n){

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

return 1;

}else{

return Fibon(n-1)+Fibon(n-2);

}

}

int main(){

for(int i=1;i<=20;i++){

printf("%dn",Fibon(i));

}

return 0;

}

数组表示

#include<stdio.h>

int main(){

int a[20]={0};

a[0]=a[1]=1;

for(int i=2;i<20;i++){

a[i]=a[i-1]+a[i-2];

}

for(int i=1;i<20;i++){

printf("%dn",a[i]);

}

return 0;

}

运行结果:

相关知识

斐波那契数列python实现,时间/空间复杂度比较
兔子几个月开始繁殖
斐波那契数列问题
兔子繁殖能力多强?男子捡回3只7个月生育近百只!
兔子出生多久可以繁殖
怎样让宝贝吃嘛嘛香?看看别家铲屎官都是怎么说的吧!
直接推导获得解答(分析)
1312:【例3.4】昆虫繁殖(递推算法)
24只兔子繁衍了100亿只,澳大利亚最后是如何解决野兔泛滥问题的?
在科学史上,都有哪些有名的科学家和他的动物

网址: 斐波那契数列(兔子繁殖)问题 https://m.mcbbbk.com/newsview978805.html

所属分类:萌宠日常
上一篇: 怎样让兔子快速怀孕(兔子快速繁殖
下一篇: 宠物兔繁殖指南