Løst: fibonacci-seriens rekursive python

Sidste ændring: 09/11/2023

Hovedproblemet med rekursive Fibonacci-serier er, at det kan blive meget svært at spore rækkefølgen af ​​Fibonacci-numre, efterhånden som serien skrider frem. Dette kan blive et problem, hvis du skal henvise til et bestemt nummer i serien, eller hvis du skal udføre en form for beregning på serien, efterhånden som den skrider frem.

def Fibonacci(n):
hvis n<0: print("Forkert input") elif n==1: return 0 elif n==2: return 1 else: return Fibonacci(n-1)+Fibonacci(n-2)[/code] Dette er en rekursiv funktion til at generere Fibonacci-tal. Det kræver et input på n, og hvis n er mindre end 0, udskriver det "Forkert input". Hvis n er lig med 1, returnerer den 0. Hvis n er lig med 2, returnerer den 1. Ellers returnerer den Fibonacci-tallet n-1 plus Fibonacci-tallet n-2.

Hvad er Fibonacci-serien

Fibonacci-serien er en række tal, hvor hvert tal er summen af ​​de to foregående. Det første tal i Fibonacci-serien er 0, og det andet tal er 1. Det næste tal i Fibonacci-serien er 1 + 1 = 2, og så videre.

Rekursiv

I Python er rekursion en måde at løse problemer på ved at kalde en funktion eller metode gentagne gange. Rekursion kan bruges til at løse problemer såsom at finde maksimum- eller minimumværdien af ​​en liste, tælle antallet af forekomster af et bestemt ord i en tekstfil eller beregne Fibonacci-sekvensen.

For at bruge rekursion i Python skal du først oprette en funktion, der vil blive kaldt rekursivt. Følgende kodeeksempel viser, hvordan man opretter en funktion, der beregner summen af ​​to lister:

def sum_of_lists(første_liste, anden_liste): returner første_liste + sum_of_lister(anden_liste, len(anden_liste))

Dernæst skal du kalde funktionen inde fra en anden funktion. Følgende kodeeksempel viser, hvordan man beregner Fibonacci-sekvensen ved hjælp af rekursion:

def Fibonacci(n): hvis n<0: print("Forkert input") ellers: returner Fibonacci(n-1)+Fibonacci(n-2)

Relaterede indlæg: