有一分数序列:2/1,3/2,5/3.8/5,13/8.21/13...求出这个数列的前20项之和。用c++写出来
时间: 2024-09-26 13:11:39 浏览: 59
这是一个著名的斐波那契数列(Fibonacci sequence)的变种,每个分数的分子和分母分别是前面两个数的和。为了计算前20项之和,我们可以创建一个简单的C++程序来完成这个任务。下面是一个简单的实现:
```cpp
#include <iostream>
#include <vector>
std::pair<int, int> fib(int n) {
if (n <= 1) return {n, 1};
std::pair<int, int> prev = fib(n - 1);
std::pair<int, int> curr = fib(n - 2);
return {prev.first + curr.first, prev.second};
}
double fibonacci_sum_to_n(int n) {
double sum = 0;
for (int i = 1; i <= n; ++i) {
auto [numerator, denominator] = fib(i);
sum += static_cast<double>(numerator) / denominator;
}
return sum;
}
int main() {
int n = 20;
double sum = fibonacci_sum_to_n(n);
std::cout << "The sum of the first " << n << " terms is: " << sum << std::endl;
return 0;
}
```
这个程序首先定义了一个递归函数`fib`用于计算斐波那契数对,然后计算并累加前n项的和。最后,在主函数中打印结果。
阅读全文
相关推荐
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![exe](https://img-home.csdnimg.cn/images/20241231044909.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pack](https://img-home.csdnimg.cn/images/20250102104920.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![gz](https://img-home.csdnimg.cn/images/20210720083447.png)
![whl](https://img-home.csdnimg.cn/images/20250102104920.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![zip](https://img-home.csdnimg.cn/images/20241231045053.png)
![rar](https://img-home.csdnimg.cn/images/20241231044955.png)
![-](https://img-home.csdnimg.cn/images/20210720083447.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)