Kalandozás a python programozás földjén.

Python, ahogy én ...

Fibonacci

2019. március 27. - d3c0d3r

Feladat:

A Fibonacci-számsorozatban minden szám az azt megelőző két szám összege. Így tehát a számsorozat: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233 stb. Minél későbbi tagjait vesszük a sorozatnak, két egymást követő szám aránya annál inkább az aranymetszéshez fog közelíteni (ami megközelítőleg 1,618 vagy 0,618)

A számsor már a 6. században ismert volt indiai matematikusok által (például Gopala (1135 előtt) és Hemacsandra (1150 körül) említették az 1, 2, 3, 5, 8, 13, 21,... számsorozatot), de csak Fibonacci Liber Abacci-ját követően vált közismertté Európában.

via

Megoldás:

def fibonacci(n):
	return n if n<2 else fibonacci(n-2)+fibonacci(n-1)

print (fibonacci(7))

 

Másik megoldás (gyorsabb):

def fibonacci(n):
    fib = [0,1]
    for i in range(1,n):
        fib.append(fib[i]+fib[i-1])
    return fib[-1]

A bejegyzés trackback címe:

https://python-kalandok.blog.hu/api/trackback/id/tr2014720471

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.
süti beállítások módosítása