#include <iostream>
template <int N> inline int fibo(){
return fibo<N-1>()+fibo<N-2>();
};
template <> inline int fibo<1>(){
return 1;
};
template <> inline int fibo<0>(){
return 1;
};
int main(){
//inconvéniant : la récurence exige qu'on le fasse de 500 en 500, sinon, G++ n'aime pas...
int a=fibo<4>();
std::cout << a << "\n";
return 0;
}
Remarque :
j'ai decide d'utiliser les templates car c'est selon moi le seul avantage du Cpp pour ce genre de code, alors si on propose plusieurs langages, autant proposer des codes differents (j'aurais pu pousser a faire des templates sur tout type de donnees, et pas seulement des int, mais bon, pour calculer pi ok, mais pour ca... je ne vois pas trop l'interet)