c++迭代解决斐波那契兔子
时间: 2024-10-01 20:05:20 浏览: 47
在C++中,我们可以使用迭代的方式来解决斐波那契数列的问题,特别是针对斐波那契兔子模型,也就是通常所说的"兔子繁殖问题"。这个模型是基于递推关系,描述一对刚出生的小兔子一个月后变成两对,之后每个月都会新生一对小兔子。
下面是一个简单的C++函数,它使用迭代来计算n个月后兔子的数量:
```cpp
#include <iostream>
#include <vector>
size_t fibonacciRabbits(int months) {
std::vector<size_t> rabbits(months + 1, 0);
rabbits[0] = 1; // 初始一对成年兔子
rabbits[1] = 1; // 第一个月新生一对
for (size_t month = 2; month <= months; ++month) {
rabbits[month] = rabbits[month - 1]; // 成年兔子不变
rabbits[month] += rabbits[month - 2]; // 新生兔子等于上个月成年兔子和新生兔子之和
}
return rabbits[months];
}
int main() {
int n;
std::cout << "请输入月份数: ";
std::cin >> n;
std::cout << "第 " << n << " 个月兔子的数量是: " << fibonacciRabbits(n) << std::endl;
return 0;
}
```
阅读全文