funkce Atan, atanf, ARCTG2, atan2f
Calculates the arctangent of x (atan or atanf) or the arctangent of y/x (atan2 or atan2f).
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
);
float atan2f(
float y,
float x
);
Parametry
- x, y
Všechna čísla.
Vrácená hodnota
atanVrátí arkustangens x v oblasti –π/2 až π/2 radiánů.atan2Vrátí arkustangens y/x v –π rozsahu na radiány hodnotou pí.If x is 0, atan returns 0.Pokud oba parametry atan2 0, vrátí funkce hodnotu 0.Všechny výsledky jsou v radiánech.
atan2příznaky oba parametry se používá k určení kvadrantu vrácenou hodnotu.
Vstup |
Výjimka SEH |
Výjimka Matherr |
---|---|---|
± QNAN,IND |
žádný |
_DOMAIN |
Poznámky
atan Funkce vypočítá arkustangens x.atan2počítá arkustangens y/x (Pokud x se rovná 0, atan2 vrátí π/2, pokud y je pozitivní, - π / 2 Pokud y je záporné nebo 0, pokud y je 0.)
atanmá implementace, která používá Streaming SIMD Extensions 2 (SSE2).Viz _set_SSE2_enable informace a omezení použití implementace SSE2.
C++ umožňuje přetížení, tak můžete volat přetížení z atan a atan2.V programu c atan a atan2 vždy trvat a vrátit se zdvojnásobí.
Požadavky
Rutina |
Požadované záhlaví |
---|---|
atan, atan2, atanf, atan2f |
<math.h> |
Příklad
// 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;
}