Section courante

A propos

Section administrative du site

LOG

Logarithme
Langage C++ cmath (math.h)

Syntaxe

float log(float n);
double log(double n)
long double log(long double n);

Paramètres

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

Description

Cette fonction retourne le logarithme naturel ou népérien.

Remarque

Algorithme

MODULE SQRT(X)
   SI X = 0.0 ALORS
      RETOURNE 0.0
   SINON
      M ← 1.0
      XNX
      BOUCLE FAIRE TANT QUE XN >= 2.0
         XN ← 0.25 x XN
         M ← 2.0 x M
      FIN BOUCLE FAIRE TANT QUE
      BOUCLE FAIRE TANT QUE XN < 0.5
         XN ← 4.0 x XN
         M ← 0.5 x M
      FIN BOUCLE FAIRE TANT QUE
      AXN
      B ← 1.0 - XN
      BOUCLE REPETER
         AA x (1.0 + 0.5 x B)
         B ← 0.25 x (3.0 + B) x B x B
      FIN BOUCLE JUSQU'A B ← 1.0E - 15
      RETOURNE A x M
   FIN SI

MODULE LOG(x)
   negatif ← faux
   fois ← 1
   ajout ← 0
   SI x <= 0.0 ALORS
      RETOURNE 0
   FIN SI
   SI x < 1.0 ALORS
      negatif ← vrai
      x ← 1.0 / x
   FIN SI
   BOUCLE FAIRE TANT QUE x >= 10.0
      xx / 10.0
      ajoutajout + 2.302585092994046
   FIN BOUCLE FAIRE TANT QUE
   BOUCLE FAIRE TANT QUE x >= 1.1
      x ← SQRT(x)
      foisfois x 2
   FIN BOUCLE FAIRE TANT QUE
   xx - 1
   savxx
   i ← 2
   xpx x x
   quotient ← (xp / i)
   dlx - quotient
   BOUCLE FAIRE TANT QUE 1.0E-15 ← quotient
      ii + 1
      xpxp x x
      dldl + (xp / i)
      ii + 1
      xpxp x x
      quotient ← (xp / i)
      dldl - quotient
   FIN BOUCLE FAIRE TANT QUE
   dldl x fois
   dldl + ajout
   SI negatif ALORS
      dl ← -dl
   FIN SI
   RETOURNE dl

Exemple

Voici un exemple permettant d'afficher le logarithme inférieurs à 2 :

Essayer maintenant !
  1. #include <iostream>
  2. #include <cmath>
  3.  
  4. int main()
  5. {
  6.     float I;
  7.     for(I = 0.1;I <= 2.0;I += 0.1) {
  8.         std::cout << "LOG(" << I << ")=" << log(I) << std::endl;
  9.     }
  10.     return 0;
  11. }

on obtiendra le résultat suivant :

LOG(0.1)=-2.3025850929940455
LOG(0.2)=-1.6094379124341003
LOG(0.3)=-1.203972804325936
LOG(0.4)=-0.916290731874155
LOG(0.5)=-0.6931471805599453
LOG(0.6)=-0.5108256237659907
LOG(0.7)=-0.35667494393873245
LOG(0.8)=-0.1053605156578264
LOG(0.9)=-1.1102230246251565e-16
LOG(1.0)=0.09531017980432474
LOG(1.2)=0.1823215567939546
LOG(1.3)=0.26236426446749106
LOG(1.4)=0.336472236621213
LOG(1.5)=0.40546510810816455
LOG(1.6)=0.47000362924573574
LOG(1.7)=0.5306282510621706
LOG(1.8)=0.5877866649021193
LOG(1.9)=0.641853886172395

Voir également

Langage de programmation - C++ - Référence de procédures et fonctions - exp
Langage de programmation - C++ - Référence de procédures et fonctions - pow
Langage de programmation - C++ - Référence de procédures et fonctions - sqrt
Langage de programmation - C - Référence de procédures et fonctions - log

Références

Langage C, Edition Micro-Application, Gehard Willms, 2001, ISBN: 2-7429-2008-0, page 733.
Borland C++ for Windows 4.0, Library Reference, Edition Borland, 1993, Part # BCP1240WW21772, page 162.

Dernière mise à jour : Lundi, le 3 août 2015