Annuaire d'articles
sujet
Problème classique : Il y a un couple de lapins. À partir du troisième mois après la naissance, un couple de lapins naît chaque mois. Après que le bébé lapin ait atteint le troisième mois, un autre couple de lapins naît chaque mois. Si les lapins ne sont pas morts, demandez à chacun Quel est le nombre total de lapins en un mois ?
des idées
La loi du lapin est la suite 1, 1, 2, 3, 5, 8, 13, 21... Elle se conforme aux règles changeantes de la suite de Fibonacci. Vous pouvez utiliser des boucles ou la récursivité pour résoudre ce problème.
répondre
① Cycle
#include <stdio.h>
int main()
{
long f1,f2;
int i;
f1=f2=1;
for(i=1;i<=20;i++)
{
printf("%12ld %12ld",f1,f2);
if(i%2==0)
{
printf("\n"); //控制输出,每行四个
}
f1=f1+f2; //前两个月加起来赋值给第三个月
f2=f1+f2; //前两个月加起来赋值给第三个月
}
}
② récursivité
#include <stdio.h>
long countRabbit(long f)
{
if(f==1 || f==2)
{
return 1;
}
else
{
return countRabbit(f-1) + countRabbit(f-2);
}
}
int main()
{
int month ;
int i;
printf("请输入月份:");
scanf("%d",&month);
for(i=1;i<=month;i++)
{
long f = countRabbit(i);
printf("%12ld",f);
if(i%4==0)
{
printf("\n");
}
}
return 0;
}