I datalogi , en rekursiv funktion er et programmeringssprog konstruktion, der kalder sig selv . De anvendes primært til at evaluere matematiske funktioner . Fibonacci rekursion Funktionen beregner Fibonacci række numre . Fibonacci serien er en sekvens af tal med de første to tal er 1. . Hver efterfølgende tal er beregnet ved at lægge de to tal der gik forud . Traditionelt har Fibonacci rekursion funktionen været et dårligt eksempel på rekursion på grund af antallet af selvstændige opkald fra funktionen. Det følgende eksempel er en generisk kode gennemførlig i flere sprog i programmet . Instruktioner
1
Implementer en metode til at håndtere base case af rekursive funktion. Metoden accepterer en integer variabel og kalder en anden metode til at håndtere de to værdier efter basisscenariet . Et eksempel kode ser sådan ud : Hej
unsigned int fibonacci ( usignerede int n )
{
tilbagevenden n == 0? 0: fibonacci2 (n , 0, 1 ),
}
Symbolet " : ? " Betyder, at hvis n er lig med 0 funktionen returnerer 0 , ellers fibonacci2 kaldes
.
2
Implementer en anden metode til at håndtere hvert enkelt tilfælde efter basisscenariet . Et eksempel koder ligner dette : Hej
unsigned int fibonacci2 (usignerede int n , unsigned int værdi1 , unsigned int værdi2 )
{
tilbagevenden n == 1 ? værdi1 : fibonacci2 (n - 1 , værdi2 , værdi1 + værdi2 ),
}
Symbolet "?" ? betyder, at hvis n er lig med 1 og derefter værdi1 lig med en , ellers fibonacci2 kaldes rekursivt .
3
Indtast en vilkårlig værdi for variablen "n ", og kompilere kode til at udføre Fibonacci funktionen på den indtastede værdi.