Prima di tutto analizziamo come funziona la sequenza di fibonacci.
I primi 8 numeri sono:
1 1 2 3 5 8 13 21
come possiamo vedere, il primo e il secondo numero sono uguali a 1, mentre tutti gli altri numeri sono uguali alla somma dei due numeri precedenti.
Volendo quindi schematizzare la funzione di fibonacci avremo:
F(1) -> 1
F(2) -> 1
F(n) -> F(n-1) + F(n-2)
Con queste info a disposizione sarà molto facile scrivere la funzione. Dobbiamo inoltre ricordarci che la funzione nn ammette numeri minori o uguali a 0.
Ecco quindi come strutturare la funzione
int fibonacci(int n)
{
if (n<=0) return 0;
if (n==1) return 1;
if (n==2) return 1;
return fibonacci(n-1) + fibonacci(n-2);
}
Come vedete, è sufficiente rispettare le regole che ci si è prefissati!
per provarla sarà sufficiete fare:
#include <stdio.h>
int main(void)
{
printf("Il 4° numero della sequenza di fibonacci è %d", fibonacci(4));
getchar();
}
Aggiungi un commento