输入一个正整数 n,计算并输出2/1,3/2,5/3,8/5,13/8,..的前n项之和,结果用浮点数类型表示
时间: 2023-11-02 20:05:29 浏览: 71
n = int(input())
sum = 0.0 # 定义和的初始值为0.0
a = 2.0 # 分子初始值为2.0
b = 1.0 # 分母初始值为1.0
for i in range(n):
sum += a / b # 累加每一项的值
a, b = a + b, a # 更新分子和分母的值
print("{:.2f}".format(sum)) # 输出结果,保留两位小数
相关问题
编辑一个python程序让输入一个正整数 n,计算并输出2/1, 3/2, 5/3, 8/5, 13/8, …的前n项之和
好的,以下是代码实现:
```python
n = int(input("请输入一个正整数n:")) # 输入n
a = 2 # 定义数列的第一个数
b = 1 # 定义数列的第二个数
sum = 0 # 初始化数列的和
for i in range(n): # 循环n次
sum += a / b # 计算数列的和
a, b = a + b, a # 更新数列的前两个数
print("2/1, 3/2, 5/3, 8/5, 13/8, …的前", n, "项之和为:", sum) # 输出结果
```
请注意,此代码仅适用于 Python 3.x 版本。如果你使用的是 Python 2.x 版本,需要将 input() 函数改为 raw_input() 函数。
输入一个正整数 n,计算并输出2/1, 3/2, 5/3, 8/5, 13/8, …的前n项之和,结果用浮点数类型表示
思路:使用两个变量a和b分别表示分数的分子和分母,每次循环更新a和b的值,并计算出当前项的值并加到总和上。
代码如下:
n = int(input("请输入一个正整数:"))
a, b = 2, 1 # 初始值为2/1
sum = 0
for i in range(n):
sum += a / b # 计算当前项的值并加到总和上
a, b = a + b, a # 更新a和b的值
print("前%d项之和为:%.2f" % (n, sum)) # 输出结果,保留两位小数
阅读全文