#include <math.h> // <cmath> en C++
double asin( double sinus );
float asinf( float sinus ); // C99
long double asinl( long double sinus ); // C99
Ces trois fonctions permettent de calculer l'arc sinus. En mathématiques, l'arc sinus est la fonction inverse de la fonction sinus. L'arc sinus d'un nombre flottant compris entre -π/2 et π/2 est donc l'angle pour lequel la fonction sinus calcule la valeur passée en paramètre. L'angle retourné sera compris entre -π/2 et π/2.
La différence entre ces trois fonctions réside dans le type de données utilisé pour le paramètre et la valeur de retour (double, float ou long double). Les fonctions asinf
et asinl
ont été ajoutées dans C99.
Si la valeur passée en paramètre se trouve dans de l'intervalle [-1, 1], ces fonctions renvoient la valeur d'un angle compris entre -π/2 et π/2 (donc exprimé en radians).
Si la valeur passée en paramètre se trouve en dehors de l'intervalle [-1, 1], ces fonctions renvoient une valeur NaN (Not A Number) et la variable globale errno contiendra le code d'erreur EDOM (Erreur de DOMaine).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
#include <math.h> #include <stdio.h> #include <stdlib.h> int main() { double value; printf( "Saisir une valeur comprise entre -1 et 1 : " ); scanf( "%lf", &value ); printf( "L'angle de ce sinus vaut : %lf radians\n", asin( value ) ); printf( "L'angle de ce cosinus vaut : %lf radians\n", acos( value ) ); return EXIT_SUCCESS; } |
Il est à noter que la librairie mathématique doit être ajoutée durant l'étape de "link" (édition des liens)
de votre exécutable. Cela se réalise en ajoutant l'option -lm
à votre compilateur gcc. En cas
d'utilisation d'un autre compilateur, je vous renvoie vers la documentation de ce dernier.
$> gcc -o sample sample.c -lm $> ./sample Saisir une valeur comprise entre -1 et 1 : 0.5 L'angle de ce sinus vaut : 0.523599 radians L'angle de ce cosinus vaut : 1.047198 radians $>
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :