Section courante

A propos

Section administrative du site

EXP

Exposant
PL/1

Syntaxe

Y=EXP(X);

Paramètres

Nom Description
X Ce paramètre permet d'indiquer le nombre contenant l'expression à traiter

Description

Cette fonction retourne la valeur exponentielle.

Algorithme

MODULE EXP(x)
   Inverse ← faux
   n ← 0
   dl ← 1
   i ← 1
   SI x < 0 ALORS
      Inverse ← vrai
      x ← -x
   FIN SI
   BOUCLE FAIRE TANT QUE x >= 2
      xx / 2
      nn + 1
   FIN BOUCLE FAIRE TANT QUE
   xx / 16
   nn + 4
   qx
   BOUCLE FAIRE TANT QUE q > 1.0E - 15
      dldl + q
      ii + 1
      qq x x / i
   FIN BOUCLE FAIRE TANT QUE
   BOUCLE POUR i ← 1 JUSQU'A n
      dldl x dl
   FIN BOUCLE POUR
   SI Inverse ALORS
      dl ← 1 / dl
   FIN SI
   RETOURNE dl

Exemple

Voici un exemple permet d'afficher les exposants inférieurs à 2 :

  1.  Corps: PROC options(main);
  2.       DECLARE (I) float;
  3.       DO I = 0 TO 2.0 BY 0.1;
  4.           display('Exp(' || I || ')=' || exp(I));
  5.       END;
  6.  END Corps;

on obtiendra le résultat suivant :

Exp( 0.00000E+0000)= 1.00000E+0000
Exp( 1.00000E-0001)= 1.10517E+0000
Exp( 2.00000E-0001)= 1.22140E+0000
Exp( 3.00000E-0001)= 1.34986E+0000
Exp( 4.00000E-0001)= 1.49182E+0000
Exp( 5.00000E-0001)= 1.64872E+0000
Exp( 6.00000E-0001)= 1.82212E+0000
Exp( 7.00000E-0001)= 2.01375E+0000
Exp( 8.00000E-0001)= 2.22554E+0000
Exp( 9.00000E-0001)= 2.45960E+0000
Exp( 1.00000E+0000)= 2.71828E+0000
Exp( 1.10000E+0000)= 3.00417E+0000
Exp( 1.20000E+0000)= 3.32012E+0000
Exp( 1.30000E+0000)= 3.66930E+0000
Exp( 1.40000E+0000)= 4.05520E+0000
Exp( 1.50000E+0000)= 4.48169E+0000
Exp( 1.60000E+0000)= 4.95303E+0000
Exp( 1.70000E+0000)= 5.47395E+0000
Exp( 1.80000E+0000)= 6.04965E+0000
Exp( 1.90000E+0000)= 6.68590E+0000


Dernière mise à jour : Lundi, le 13 octobre 2014