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

public class FibonacciSequentielEnConsole {

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

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

  static long fib(int n) {
    long res;
    long a;
    long b;
    switch (n) {
      case 0 :
      case 1 : {
        res = n; }
        break;
      default : {
        res = 0;
        a = 0;
        b = 1;
        for ( int i = 2 ; i <= n ; i++ ) {
          res = a+b;
          a = b;
          b = res; } }
        break; }
    return res;
  }

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

/* Programme principal                         */

  public static void main(String [] args) {
    Console.setTitle("FibonacciSequentiel");
    int n;
    long fibn;
    Console.afficher("Valeur ? ");
    n = Console.saisirInt();
    fibn = fib(n);
    Console.afficherln("Fib(",n,") = ",fibn);
  }
}