atan, atanf, atanl, atan2, atan2f, atan2l
Calcule l'arctangente de x (atan, atanf, et atanl) ou l'arctangente de y/x (atan2, atan2f, et atan2l).
double atan(
double x
);
float atan(
float x
); // C++ only
long double atan(
long double x
); // C++ only
double atan2(
double y,
double x
);
float atan2(
float y,
float x
); // C++ only
long double atan2(
long double y,
long double x
); // C++ only
float atanf(
float x
);
long double atanl(
long double x
);
float atan2f(
float y,
float x
);
long double atan2l(
long double y,
long double x
);
Paramètres
- x, y
Nombres quelconques.
Valeur de retour
atan retourne l'arctangente de x dans la plage – π/2 à π/2 radians. atan2 retourne l'arctangente de y/x dans la plage – π à π radians. Si x est égal à 0, atan, renvoie 0 . Si les deux paramètres de atan2 sont 0, la fonction renvoie 0. Tous les résultats sont en radians.
atan2 utilise les signes des deux paramètres pour déterminer le quadrant de la valeur retournée.
Entrée |
Exception SEH |
Exception Matherr |
---|---|---|
± QNAN,IND |
aucun |
_DOMAIN |
Notes
La fonction atan calcule arctangente (la fonction inverse de la tangente) de x. atan2 calcule l'arctangente de y/x (si x est égal à 0, atan2 retourne π/2 si y est positif, - π/2 si y est négatif, ou nul si y est égal à 0.)
atan a une implémentation qui utilise les extensions Streaming SIMD 2 (SSE2). Pour plus d'informations et de restrictions sur l'utilisation de l'implémentation SSE2, consultez _set_SSE2_enable.
Comme C++ permet une surcharge, vous pouvez appeler des surcharges de atan et atan2. Dans un programme C, atan et atan2 prennent et retournent toujours des doubles.
Configuration requise
Routine |
En-tête requis |
---|---|
atan, atan2, atanf, atan2f, atanl, atan2l |
<math.h> |
Exemple
// crt_atan.c
// arguments: 5 0.5
#include <math.h>
#include <stdio.h>
#include <errno.h>
int main( int ac, char* av[] )
{
double x, y, theta;
if( ac != 3 ){
fprintf( stderr, "Usage: %s <x> <y>\n", av[0] );
return 1;
}
x = atof( av[1] );
theta = atan( x );
printf( "Arctangent of %f: %f\n", x, theta );
y = atof( av[2] );
theta = atan2( y, x );
printf( "Arctangent of %f / %f: %f\n", y, x, theta );
return 0;
}
Équivalent .NET Framework
Voir aussi
Référence
Prise en charge de la virgule flottante
cos, cosf, cosl, cosh, coshf, coshl
sin, sinf, sinl, sinh, sinhf, sinhl