/* Evaluation du temps d'execution              */
/* Calcul de Fib(n) par methode recursive       */
/*  - Fib(0) = 0                                */
/*  - Fib(1) = 1                                */
/*  - Fib(n) = Fib(n-1)+Fib(n-2)                */

public class TempsFibonacciEnConsole {

//////////////////////////////////////////////////

/* Calcul de Fib(n) par methode recursive       */
/*  - Fib(0) = 0                                */
/*  - Fib(1) = 1                                */
/*  - Fib(n) = Fib(n-1)+Fib(n-2)                */

  static long fib(int n) {
    long res;
    switch (n) {
      case 0 :
      case 1 : {
        res = n; }
        break;
      default : {
        res = fib(n-1)+fib(n-2); }
        break; }
    return res;
  }

//////////////////////////////////////////////////

/* Programme principal                         */

  public static void main(String [] args) {
    Console.setTitle("TempsFibonacci");
    long t1;
    long t2;
    long dt;
    int n;
    Console.afficher("Nombre de nombres ? ");
    n = Console.saisirInt();
    for ( int i = 0 ; i < n ; i++ ) {
      t1 = System.nanoTime();
      fib(i);
      t2 = System.nanoTime();
      dt = t2-t1;
      Console.afficherln(i," : ",dt," ns"); }
  }
}