斐波那契數列-python函數

1,

def fun():
    a,b=1,1
    while True:
        yield a
        a,b=b,a+b
f=fun()
for i in range(20):
    print(next(f),end='\t')

結果爲:1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765

2,

def f(n):
    if n==1 or n==2:
        return 1
    else:
        return f(n-1) + f(n-2)
def fib(x,y):
    for i in range(x,y):
        s=f(i)
        if x<= s <=y:
            print(s,end='\t')
x=int(input('請輸入數x(x不能小於1或者大於數y) :'))
y=int(input('請輸入數y(請合理輸入):'))
fib(x,y)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章