Exemples d'algorithmes numériques

Logarithme népérien de 2

Considérons la formule suivante permettant de calculer le logarithme népérien de 2 :

$$\log(2) = \displaystyle\sum_{n=1}^\infty \frac{(-1)^{n+1}}{n}$$

  • Question :

    Ecrire un algorithme permettant de calculer une valeur approchée de $log(2)$ sur $p$ décimales, en utilisant la formule ci-dessus. Cet algorithme devra en même temps évaluer l’erreur relative sur le résultat final obtenu en utilisant les fonctions de la section précédentes.

Algorithmes CORDIC

Dans cette partie, nous allons nous intéresser à des algorithmes utilisés dans des conditions où l’on ne possède pas de ressources importantes (mémoire, puissance de calcul) pour effectuer des calculs. Ce type de condition se présente naturellement dans les calculatrices de poche. On s’intéresser au chapitre VI.2 de la FAQ du groupe de discussions fr.sci.maths.

  • Questions :
    • Quelle est la représentation des nombres utilisés sur une calculatrice ? Quels avantages et inconvénients pouvez-vous voir à ce genre de représentation ?
    • Dans cette page, quatre algorithmes sont décrits pour calculer les fonctions trigonométriques et exponentielles. Quelle est la technique générale utilisée pour réaliser ces algorithmes ? En particulier, en quoi cette technique vous semble t’elle efficace lorsqu’elle est ramenée à une calculatrice ?
    • Implémenter ces quatre algorithmes en Python, en utilisant les mêmes techniques d’optimisation que celles décrites sur cette page:
      • les fonctions exponentielle exp et logarithme népérien ln;
      • les fonctions tangente tan et arctangente arctan.
    • Vérifier vos algorithmes en les testant par la méthode de votre choix.

Au moins une erreur s’est glissée dans cette FAQ!