Rešeno: rekurzivni piton fibonačijevog niza

Posljednje ažuriranje: 09/11/2023

Glavni problem sa rekurzivnim Fibonačijevim nizom je taj što može postati veoma teško pratiti niz Fibonačijevih brojeva kako serija napreduje. Ovo može postati problem ako trebate referencirati određeni broj u nizu, ili ako trebate izvršiti neku vrstu proračuna na seriji kako ona napreduje.

def Fibonacci(n):
if n<0: print("Neispravan unos") elif n==1: vrati 0 elif n==2: vrati 1 else: vrati Fibonacci(n-1)+Fibonacci(n-2)[/code] Ovo je rekurzivna funkcija za generisanje Fibonačijevih brojeva. Potrebno je unos od n, a ako je n manje od 0, ispisuje "Neispravan unos". Ako je n jednako 1, vraća 0. Ako je n jednako 2, vraća 1. U suprotnom, vraća Fibonačijev broj od n-1 plus Fibonačijev broj od n-2.

Šta je Fibonačijev niz

Fibonačijev niz je niz brojeva u kojem je svaki broj zbir prethodna dva. Prvi broj u Fibonačijevom nizu je 0, a drugi broj je 1. Sljedeći broj u Fibonačijevom nizu je 1 + 1 = 2, i tako dalje.

Rekurzivni

U Pythonu, rekurzija je način rješavanja problema uzastopnim pozivanjem funkcije ili metode. Rekurzija se može koristiti za rješavanje problema kao što je pronalaženje maksimalne ili minimalne vrijednosti liste, brojanje broja pojavljivanja određene riječi u tekstualnoj datoteci ili izračunavanje Fibonačijevog niza.

Da biste koristili rekurziju u Pythonu, prvo morate kreirati funkciju koja će se rekurzivno pozivati. Sljedeći primjer koda pokazuje kako kreirati funkciju koja izračunava zbir dvije liste:

def sum_of_lists(first_list, second_list): povratak prva_lista + sum_of_lists(druga_list, len(druga_list))

Zatim, trebate pozvati funkciju iz druge funkcije. Sljedeći primjer koda pokazuje kako izračunati Fibonačijev niz pomoću rekurzije:

def Fibonacci(n): ako je n<0: print("Neispravan unos") else: vrati Fibonacci(n-1)+Fibonacci(n-2)

Slični postovi: