我需要编写一个函数count(n),它取一个正整数n,并返回该值 1 + 1/2 + 1/3 + 1/4 +⋯+ 1 / n。
实施例 :Count(4)应该产生1 + 1/2 + 1/3 + 1/4
我不确定怎么做?任何帮助都会很棒。
def count(n):
for c in range(1, n+1):
print c + 1/c
我无法从头号开始,我无法以阵列格式打印。
我的计数结果(4)是 计数(4)
2.0(应为1)
2.5(应为1.5)
3.33333333333(应为1.833333)
4.25(应为2.083333)
答案 0 :(得分:0)
您的问题是,您要将1
添加到1/1
给2
。试试这个:
def count(n):
sum = 0 #Intializing the return variable
for i in range(1, n+1):
sum+=1.0/i #Adding to the return variable
return sum
这样可以:
>>> def count(n):
... sum = 0
... for i in range(1, n+1):
... sum+=1.0/i
... return sum
...
>>> count(4)
2.083333333333333
>>> count(1)
1.0
>>> count(2)
1.5
>>> count(3)
1.8333333333333333
>>> count(4)
2.083333333333333
>>>