我正在为我的大学作业做一个 pyton 练习,但似乎无法弄清楚。我需要计算 1/n^2 的和,n 是用户输入的值。
例子:
用户输入 n=4
程序计算:1+1/4+1/9+1/16= 1.42361111
这是我目前所拥有的:
num = int(input("n: "))
sum = 0
x=1
while x<=num:
sum=1/(x*x)
x=x+1
print ("the sum is:" , sum)
最佳答案
将评论中的所有好建议转化为答案:
- 不要将
sum
用作变量,因为它在 Python 中已经是一个函数名。 - 您必须在每次迭代时将
sum
添加到自身,否则sum
只会在每次迭代时被覆盖。 - (在评论中指出您的版本是
x*x
与x**2
相同。所以这完全是一个有争议的问题.) 根据您的第一段,我相信您的分母应该是x**2
而不是x**x
。
num = int(input("n: "))
output_sum = 0
x = 1
while x <= num:
output_sum += 1/(x**2)
x += 1
print ("the sum is:" , output_sum)
>>the sum is: 1.4236111111111112
注意:我从 x = x+1
切换到更常见的形式 x += 1
。使用 +=
运算符的相同加法也用于您的 output_sum
。
关于python - 在 python 中求和 1/n^2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72030470/