Les Chevaliers de Malte/Développeur - PL/1 - Mathématique - Fibonacci


Vous vous souvenez de la célèbre suite de nombre du mathématicien italien Leonardo Pisano (1170 à 1250) pour calculer à l'origine la croissance de la population de lapin. Selon le spirale suivant:

Voici un programme permettant de calculer le Fibonacci de nombre entier en PL/1:
Corps: PROC options(main); 
    DCL (i) fixed; 
    DO i = 0 TO 10;
        display("Fibonacci(" || i || ")=" || Fibon(i));
    END;
 END Corps; 
 
 Fibon: PROC(n) RETURNS(fixed) recursive;
     DCL (n,u,v,w,i) fixed; 
     IF n <= 0 THEN RETURN(0);
     IF n = 1 THEN RETURN(1);
     u = 0;
     v = 1;
      DO i = 2 TO n;
          w = u + v;
          u = v;
          v = w;
     END;
     RETURN(v);
 END Fibon;

on obtiendra le résultat suivant:
Fibonacci(0)=0
Fibonacci(1)=1
Fibonacci(2)=1
Fibonacci(3)=2
Fibonacci(4)=3
Fibonacci(5)=5
Fibonacci(6)=8
Fibonacci(7)=13
Fibonacci(8)=21
Fibonacci(9)=34
Fibonacci(10)=55



Voir également

Science - Mathématique

Dernière mise à jour: Vendredi, le 10 mars 2006