/*
* 题目:题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,
问每个月的兔子总数为多少?
* 时间:2015年7月27日08:47:08
* 文件:lianxi01.cpp
* 作者:cutter_point
*/
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
ifstream input("lianxi01in.txt"); //文件输入
ofstream output("lianxi01out.txt"); //文件输入
//我们输出的时候可以发现斐波那契数列有一个规律就是F(n) = F(n-1) + F(n-2),并且n:1=1,n:2=1
unsigned int n1, n2, M;
n1 = n2 = 1; //初始化
M = 12; //12个月
//我们统计12个月的
for (int i = 0; i < M; ++i)
{
//12个月,第一个月和第二个月是例外,都是1,由于我们要使用到n-1和n-2,所以我们还得保留前两个值
if (i < 2)
{
output << "===第===>" << i + 1 << "<===个月的兔子数为:<===>2<===>只" << endl;
}
else
{
//如果不是前2个月的话,那么我们就得计算
//下一个月的数据是钱两个月的数据的和
int temp = n1;
n1 = n2;
n2 = temp + n2;
output << "===第===>" << i + 1 << "<===个月的兔子数为:<===>"<<n2<<"<===>对" << endl;
}
}
return 0;
}
【笔试】1、斐波拉契数列
最新推荐文章于 2023-04-28 12:20:32 发布