用python写:有一个分数数列:2/1,3/2,5/3,8/5,13/8,21/13,...,从键盘输入一个正整数n,求出这个数列的前n项之和。
时间: 2023-10-27 13:07:09 浏览: 38
好的,这是一个比较有趣的数学问题。以下是用Python实现的代码:
```python
def fraction_sum(n):
numerator = 2
denominator = 1
total = 0
for i in range(n):
total += numerator / denominator
numerator, denominator = numerator + denominator, numerator
return total
n = int(input("请输入一个正整数n:"))
print("前", n, "项分数之和为:", fraction_sum(n))
```
在这个代码中,我们首先定义了一个名为`fraction_sum`的函数,它接受一个整数n作为参数。接下来,我们初始化了分数数列的第一个分数的分子和分母,以及总和。然后,我们使用一个循环来计算分数数列的前n项之和。每次迭代中,我们将当前分数的分子和分母分别加上前一个分数的分子和分母,然后计算它们的比值,并将它们加到总和中。最后,我们返回总和。
在主程序中,我们使用`input`函数从用户那里获取一个正整数n,并将它传递给`fraction_sum`函数。最后,我们打印出结果。