试编写一个程序,输入一个正整数,通过 for 循环语句计算如下数列前 n 项之和, 1/2 + 2/3 + 3/5 + 5/8 + 8/13 + 13/21……
时间: 2023-11-18 13:05:36 浏览: 159
好的,根据你的要求,下面是一个 Python 代码,可以实现你的要求:
```python
n = int(input("请输入一个正整数:"))
sum = 0
a, b = 1, 2
for i in range(n):
sum += a / b
a, b = b, a + b
print("数列前", n, "项之和为:", sum)
```
解释一下代码:
首先,我们通过 `input` 函数获取用户输入的正整数 `n`。
接着,我们定义了 `sum` 变量,用来存储数列前 `n` 项的和。然后我们定义了两个变量 `a` 和 `b`,分别表示数列中的分子和分母。
然后,我们使用 `for` 循环遍历数列前 `n` 项,每次将当前项的值 `a / b` 加到 `sum` 变量中。
在每次循环结束之前,我们需要更新 `a` 和 `b` 的值,以便计算下一项的值。具体来说,我们将 `a` 的值设置为当前项的分母 `b` 的值,将 `b` 的值设置为当前项的分子 `a + b` 的值。
最后,我们输出计算得到的数列前 `n` 项的和。
希望对你有所帮助!
阅读全文