如何解决创建数学序列
我需要创建一个数学类型的序列: P(n)= P(n-1)+ P(n-2) 我们知道P(0)= 0和P(1)= 1 我真的很难创建一个序列,我试图创建它,这是我写的一些东西...
def fibonacci(n):
number = 0
if n == 0:
number = 0
return (number)
if n == 1:
number = 1
return (number)
if n > 1:
def compute(limit):
for x in range(2,limit):
fibonacci(x) = fibonacci(x-1) + fibonacci(x-2)
for i in range(0,n):
number += compute(i)
解决方法
首先:使用“ return”语句时无需使用方括号
解决方案:
def fibonacci(n):
number = 0
if n == 0:
number = 0
return number
if n == 1:
number = 1
return number
if n > 1:
return fibonacci(n-1)+fibonacci(n-2)
此代码可以正常工作,但是如果您将使用动态编程,则您可以更有效地计算斐波那契
示例:
fibonacci = [0,1]
for i in range(2,n+1):
fibonacci.append(fibonacci[i-1]+fibonacci[i-2])
print(fibonacci[-1])
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。