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

Un livre de Wikilivres.
Contenu supprimé Contenu ajouté
m Révocation des modifications de 41.140.43.118 (discussion) vers la dernière version de JackPotte
mAucun résumé des modifications
Ligne 1 : Ligne 1 :
[[Catégorie:Programmation C (livre)]]
<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 <tt><math.h></tt>, ainsi que <tt><errno.h></tt> pour gérer les erreurs :


Ligne 9 : Ligne 7 :
</source>
</source>


Comme pour un certain nombre de fonctions de la biliothè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 <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>).


'''Note :'''
'''Note :'''
Ligne 77 : Ligne 75 :
double atan2 ( double y, double x );
double atan2 ( double y, double x );
</source>
</source>

<noinclude>
[[en:C Programming/Further math]]
</noinclude>

Version du 21 juin 2014 à 14:54

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

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