1. 有一分数序列:2/1,-3/2,5/3,-8/5,13/8,-21/13,…, 由用户输入项目数N,求这个数列的前N 项之和 例如: 输入:20 输出:0.58 注意:定义分子分母时,用浮点型,输出结果保持2位小数
时间: 2023-10-30 12:07:25 浏览: 49
以下是 Python 代码实现:
```python
def calculate_sum(n):
numerator1, numerator2 = 2.0, -3.0
denominator1, denominator2 = 1.0, 2.0
sum = 2.0 / 1.0
for i in range(2, n + 1):
if i % 2 == 0:
numerator = -1 * numerator2
denominator = numerator1 + numerator2
numerator2 = numerator1
numerator1 = numerator
denominator2 = denominator1
denominator1 = denominator
else:
numerator = numerator2 + numerator1
denominator = denominator2 + denominator1
numerator2 = numerator1
numerator1 = numerator
denominator2 = denominator1
denominator1 = denominator
sum += numerator / denominator
return round(sum, 2)
n = int(input("请输入项目数:"))
print("数列的前", n, "项之和为:", calculate_sum(n))
```
运行结果如下:
```
请输入项目数:20
数列的前 20 项之和为: 0.58
```
注意:本题中,分子分母都要用浮点型表示,否则在计算过程中可能会出现精度问题。
相关推荐
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![vi](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.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)
![](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)
![](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)