python做斐波那契数列。

python ,编程

直接创建一个类然后调用下面的def函数即可
#斐波那契数列
'''
第一位是1
第二位是1
第三位是2
公式位F(n)=f(n-1)+f(n-2)

'''

def get_Fibonacci_sequence(n):
'''输入n,遍历到第n位的斐波那契数列'''
a,b=0,1
if n>=3:#即等于>2 相当于1,2位特殊处理
for i in range(n-1):#操作次数是n-1,去除一次第一位的操作
c=a+b
a,b,=b,c
print(b)#这里选择先改变再输出,可以减少1次的循环

def get_Fibonacci_Num(n):
'''输入n,遍历到第n位的斐波那契数列的第n位数'''
a, b = 0, 1
if n >= 3: # 即等于>2 相当于1,2位特殊处理
for i in range(n - 1): # 操作次数是n-1,去除一次第一位的操作
c = a + b
a, b, = b, c
# 这里选择先改变再输出,可以减少1次的循环

return b
def get_Fibonacci_Num_recursion(n):
'''输入n,遍历到第n位的斐波那契数列的第n位数,递归实现'''
if n==1 or n==2:#特别注意,这里要用逻辑或判断,不能直接用或判断,

return 1
else:

return get_Fibonacci_Num_recursion(n-1)+get_Fibonacci_Num_recursion(n-2)

get_Fibonacci_sequence(11)
print(get_Fibonacci_Num(11))
print(get_Fibonacci_Num_recursion(11))
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-07-04
如果只是获得这个数列,而不是第几位什么的,那简单,用数组就行,设定需要输出前n位(n>=2),代码如下:
def fib_list(n):
a_list = [1, 1]
while len(a_list) < n:
a_list.append(a_list[len(a_list) - 2] + a_list[len(a_list) - 1])
return a_list
如果需要打印前100位,就直接执行
print(fib_list(100))即可
第2个回答  2019-07-03

def fab(max):

n,a,b = 0,0,1

while n<max:

yield b

a,b = b,a+b

n=n+1

for i in fab(你想要的数列长度n):

print(i) 

第3个回答  2019-07-03
python是当下十分火爆的编程语言,尤其在人工智能应用方面。如果有心从事编程方向的工作,最好到专业机构深入学习、多实践,更贴近市场,这样更有利于将来的发展。AAA教育集团从事高端计算机职业教育工作,是国内知名的教育品牌。自07年创建以来,依托先进的办学理念,AAA培养出了数万名专业型、实战型高端技术人才。AAA教育紧密结合软件企业人才需求,自主研发了专业的软件人才培养课程体系。目前已在北京、郑州、沈阳、武汉、上海、深圳等全国主要城市开设直营教学中心和就业基地。学员大多进入阿里巴巴、360、京东、新浪、搜狐、百度、联想、云智慧、神州数码等知名IT企业。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网