English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

C ++程序使用递归查找斐波那契数

Ecco un esempio di serie di Fibonacci ricorsiva utilizzando ricorsione.

Esempio

#include <iostream>
using namespace std;
int fib(int x) {
   if((x==1)||(x==0)) {
      return(x);
   } else {
      return(fib(x-1)+fib(x-2));
   }
}
int main() {
   int x, i=0;
   cout << "Inserisci il numero di termini della serie: ";
   cin >> x;
   cout << "\nSerie di Fibonacci: ";
   while(i < x) {
      cout << " " << fib(i);
      i++;
   }
   return 0;
}

Risultato di output

Inserisci il numero di termini della serie: 15
Serie di Fibonacci: 0 1 1 2 3 5 8 13 21 34 55 89 144 233 377

Nel programma sopra, il codice reale esiste nella funzione "fib", come segue:

if((x==1)||(x==0)) {
   return(x);
} else {
   return(fib(x-1)+fib(x-2));
}

in questomain()Nel metodo, l'utente inserisce efib()Sono stati chiamati molti termini. La serie di Fibonacci viene stampata come segue.

cout << "Inserisci il numero di termini della serie: ";
cin >> x;
cout << "\nSerie di Fibonacci: ";
while(i < x) {
   cout << " " << fib(i);
   i++;
}