Participer au site avec un Tip
Rechercher
 

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 :

Fonctions asin, asinf et asinl

Entête à inclure

#include <math.h>  // <cmath> en C++

Fonctions asin, asinf et asinl

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.

la figure suivante montre les liens entre la projection d'un angle sur le cercle trigonométrique et les fonctions sinus, cosinus et tangente.
Quelques rappels de trigonométrie

Paramètres

Valeur de retour

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

Exemple de code

 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;

}
Exemple d'utilisation des fonctions acos et asin

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
$> 

Sujets connexes

Les fonctions acos, acosf et acosl
Les fonctions atan, atanf et atanl
Les fonctions atan2, atan2f et atan2l
Les fonctions cos, cosf et cosl
Les fonctions sin, sinf et sinl
Les fonctions tan, tanf et tanl
La méthode Math.asin en Java
La fonction asin en Python