– U0 = 0 – U1 = 1 – Un = Un−1 + Un−2Par exemple :
U2 = U1 + U0 = 1
U3 = U2 + U1 = 2
U4 = U3 + U2 = 3
Ecrivez deux versions de cette fonction :
- une sous forme itérative
- et sous forme récursive.
Laquelle des deux variantes est préférable ?
Vous pouvez utiliser le code suivant :
public class Fibonacci{ public static void main(String[] args){ System.out.println("fibo1 : " + fibo1(Integer.valueOf(args[0]))); System.out.println("fibo2 : " + fibo2(Integer.valueOf(args[0]))); } /** Implémentation avec itérations **/ static int fibo1(int n){ // à compléter } /** Implémentation récursive **/ static int fibo2(int n){ // à compléter } }Par exemple
fibo1(10) = fibo2(10) = 55
.