Python 如何在循环中增加分数/分母?
我正在尝试开发一个Python3程序,允许用户选择分母并计算公式。例如:Python 如何在循环中增加分数/分母?,python,python-3.x,Python,Python 3.x,我正在尝试开发一个Python3程序,允许用户选择分母并计算公式。例如: 用户选择5作为分母 方程将递增,直到给定分母 (1/1)+(1/2)+(1/3)+(1/4)+(1/5) 输出应为(2.28333) 我的代码: d = input ("Select a denominator") for i in range(d) d += (1/d) print(d) 到目前为止,我只能要求用户输入/分母。我试着把它放在一个循环中,但我做错了什么。这是打印出
- 用户选择5作为分母
- 方程将递增,直到给定分母
- (1/1)+(1/2)+(1/3)+(1/4)+(1/5)
- 输出应为(2.28333)
d = input ("Select a denominator")
for i in range(d)
d += (1/d)
print(d)
到目前为止,我只能要求用户输入/分母。我试着把它放在一个循环中,但我做错了什么。这是打印出来的:
5.2
5.392307
5.577757
5.757040
5.930740
- 您需要使用
int()
- 对总分母和最终分母使用不同的变量
从0到范围(x)
,要从1到x,您需要x-1
范围(1,x+1)
- 您需要将
而不是1/i
添加到总数中1/最终分母
final_denominator = int(input("Select a denominator: "))
total = sum(1 / i for i in range(1, final_denominator + 1))
print(total)
不能除以
0
我认为您需要使用多个变量。范围(d)
从0
到d
1/0
未定义。您没有使用i
。我忘记添加int()
,已经修复了它。
final_denominator = int(input("Select a denominator: "))
total = sum(1 / i for i in range(1, final_denominator + 1))
print(total)