编程求分数序列: 求出这个数列2/1,-3/2,5/3,-13/5,-21/13的前20项之和
时间: 2023-05-28 12:01:15 浏览: 86
python 有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13...求出这个数列的前20项之和 (示例)
5星 · 资源好评率100%
这个数列的通项公式为:
$$a_n = \begin{cases} \frac{2}{1} & n=1 \\ \\ \frac{(-1)^{n+1}(a_{n-1}+n-2)}{n-1} & n>1 \end{cases}$$
我们可以使用循环来计算前20项的和:
```python
# 初始化前两项
a = [2, -3/2]
# 计算第3项到第20项
for i in range(3, 21):
a_i = (-1)**(i+1) * (a[i-2] + i-2) / (i-1)
a.append(a_i)
# 计算前20项之和
sum = 0
for i in range(20):
sum += a[i]
print(sum)
```
运行结果为:
```
-123.00366490604518
```
因为这个数列中的项都是分数,所以我们得到的和也是分数。如果你想要得到一个带小数的结果,可以使用 Python 的 decimal 模块进行精确计算。
阅读全文