« Programmation C/Mathématiques » : différence entre les versions

Un livre de Wikilivres.
Contenu supprimé Contenu ajouté
m Révocation des modifications de 41.248.172.20 (discussion) vers la dernière version de 41.140.18.132
Ligne 23 : Ligne 23 :
''exp'' calcule ''e'' élevé à la puissance de ''x'' (<math>e^x</math>) où ''e'' est la base des logarithmes naturels (ln(e) = 1). ''pow'' calcule la valeur de ''x'' élévé à la puissance ''y'' (<math>x^y</math>).
''exp'' calcule ''e'' élevé à la puissance de ''x'' (<math>e^x</math>) où ''e'' est la base des logarithmes naturels (ln(e) = 1). ''pow'' calcule la valeur de ''x'' élévé à la puissance ''y'' (<math>x^y</math>).


=== Erreurs ===
NON!!! c'est faux totalement faux c'est exponentielle dial tabone mok.
La fonction ''pow'' peut déclencher l'erreur suivante :
*'''EDOM''' : ''x'' est négatif, et ''y'' n’est pas un entier.


== Logarithmes ==


<source lang="c">
e^x+1=0. Alors je vous explique:
double log ( double x );
double log10 ( double x );
</source>


''log'' calcule le logarithme néperien de ''x'' (noté généralement ln(x) en mathématiques). ''log10'' calcule le logarithme à base 10 de ''x''.
e^x=-1
x=ln(-1)
Sachant que ln(-1)=ln(1)+ ixpi=ixpi


=== Erreurs ===
Alors maintenant revenons à la première équation:
* '''EDOM''' : ''x'' est négatif ;
e^x+1=0
* '''ERANGE''' : ''x'' est nul.
e^ixpi +1=0 (parceque e^ixpi=-1)
-1+1=0
0=0
Avez vous compris?


== Racine carrée ==
== Racine carrée ==

Version du 10 septembre 2012 à 19:50


Pour pouvoir utiliser les fonctions mathématiques, il faut utiliser l'en-tête <math.h>, ainsi que <errno.h> pour gérer les erreurs :

#include <math.h>
#include <errno.h>

Comme pour un certain nombre de fonctions de la biliothèques standard, il est en effet nécessaire d'utiliser <errno.h> pour détecter l'erreur d'une fonction mathématique (voir le chapitre sur la gestion d'erreurs pour voir comment utiliser <errno.h>).

Note : Sur certains compilateurs comme GCC, il est nécessaire d'ajouter durant l'édition des liens une option pour que la « librairie mathématique » soit liée au programme. Pour GCC, cette option est -lm. Sans cette option, le programme pourra compiler, mais le résultat à l'exécution sera surprenant...

Exponentiations

double exp ( double x );
double pow ( double x, double y );

exp calcule e élevé à la puissance de x () où e est la base des logarithmes naturels (ln(e) = 1). pow calcule la valeur de x élévé à la puissance y ().

Erreurs

La fonction pow peut déclencher l'erreur suivante :

  • EDOM : x est négatif, et y n’est pas un entier.

Logarithmes

double log ( double x );
double log10 ( double x );

log calcule le logarithme néperien de x (noté généralement ln(x) en mathématiques). log10 calcule le logarithme à base 10 de x.

Erreurs

  • EDOM : x est négatif ;
  • ERANGE : x est nul.

Racine carrée

double sqrt ( double x );

Renvoie la racine carrée de x.

Erreurs

  • EDOM : x est négatif.

Sinus, cosinus, tangente

double sin ( double x );
double cos ( double x );
double tan ( double x );

Note : les angles retournés sont en radians (intervalle -pi/2 à pi/2).

Arc sinus, arc cosinus

double asin ( double x );
double acos ( double x );

Erreurs

  • EDOM : x est inférieur à -1 ou supérieur à 1.

Arc tangente

double atan ( double x );
double atan2 ( double y, double x );