怎么求和一个函数产生的所有结果?
如题,请问怎么求和一个函数产生的所有结果 看具体情况啊可以给个例子吗 昨非 发表于 2021-1-13 19:35
看具体情况啊
可以给个例子吗
def recursive(n):
if n==1:
return 1
else:
return (n*recursive(n-1))**(-1)
这里的目的是求阶乘的倒数,然后再求所有的阶乘倒数和,不知道第一步设计的对不对{:10_277:} AresFC 发表于 2021-1-13 19:49
这里的目的是求阶乘的倒数,然后再求所有的阶乘倒数和,不知道第一步设计的对不对
阶乘的倒数和?
还是1+1/2+1/3+1/4+....?
还是不太清楚 昨非 发表于 2021-1-13 20:01
阶乘的倒数和?
还是1+1/2+1/3+1/4+....?
还是不太清楚
是求1/1+1/2!+1/3!+1/4!+...+1/n=?这样
阶乘倒数的和 AresFC 发表于 2021-1-13 20:09
是求1/1+1/2!+1/3!+1/4!+...+1/n=?这样
阶乘倒数的和
def recursive(n):#计算1/n!
if n==1:
return 1
else:
return (1/n*recursive(n-1))
def result(m): #求和
if m==1:
return 1
else:
return recursive(m) + result(m-1)
print(result(1))
print(result(2))
print(result(3))
print(result(4))
print(result(5))
亲测结果:
1
1.5
1.6666666666666667
1.7083333333333335
1.7166666666666668
符合要求 昨非 发表于 2021-1-13 20:32
亲测结果:
符合要求
谢谢大佬!能帮忙看下这样写的话哪里错了吗def recursive(n):
if n==1 or n==0:
return 1
else:
return n*recursive(n-1)
def mul(m):
ls=[]
for i in range(m+1):
ls.append(1/(recursive(i)))
return sum(ls)
a=int(input('Please input number:'))
print(mul(a)) AresFC 发表于 2021-1-13 20:41
谢谢大佬!能帮忙看下这样写的话哪里错了吗
我先看看哈
你新的帖子我也回答了,一模一样的问题,给个最佳哈
(感觉今天刷疯了哈哈) 昨非 发表于 2021-1-13 20:47
我先看看哈
你新的帖子我也回答了,一模一样的问题,给个最佳哈
(感觉今天刷疯了哈哈)
一晚上回答了好多问题哈哈 感谢感谢{:10_275:} 搞定了,改了两处
def recursive(n):
if n==1 or n==0:
return 1
else:
return n*recursive(n-1)
ls=[] #这个放在外面,不然每递归一层,都会被覆盖(清空)
def mul(m):
for i in range(1,m+1):
ls.append(1/(recursive(i)))
return sum(ls) #这个缩进不对,要放到for循环外
a=int(input('Please input number:'))
print(mul(a)) 昨非 发表于 2021-1-13 20:55
搞定了,改了两处
{:10_282:}太棒啦!thx!
for i in range(1,m+1):
求问这里的range为什么是从1开始的嘞
我试了下从0开始确实结果不对,但是0对应的recursive()不也是1嘛 AresFC 发表于 2021-1-13 21:15
太棒啦!thx!
算上0的话就错了
你可以试一下
页:
[1]