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

Un livre de Wikilivres.
Contenu supprimé Contenu ajouté
m Formatage, ajout de code
Ligne 1 : Ligne 1 :
<noinclude>{{Programmation C}}</noinclude>
<noinclude>{{Programmation C}}</noinclude>
Pour pouvoir utiliser les fonctions mathématiques, il faut utiliser l'en-tête <tt><math.h></tt>, ainsi que <tt><errno.h></tt> pour gérer les erreurs :
Pour pouvoir utiliser les fonctions mathématiques, il faut utiliser l'en-tête <code><math.h></code>, ainsi que <code><errno.h></code> pour gérer les erreurs :


<source lang="c">
<source lang="c">
Ligne 7 : Ligne 7 :
</source>
</source>


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


'''Note :'''
'''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 <tt>-lm</tt>. Sans cette option, le programme pourra compiler, mais le résultat à l'exécution sera surprenant...
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 <code>-lm</code>. Sans cette option, le programme pourra compiler, mais le résultat à l'exécution sera surprenant...


== Exponentiations ==
== Exponentiations ==

Version du 23 juillet 2017 à 13:23

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 bibliothè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 );

Arc sinus, arc cosinus

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

Note : les angles retournés sont en radians (intervalle pour asin et pour acos).

Erreurs

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

Arc tangente

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