atan、atanf、atan2、atan2f

x のアークタンジェント (atan または atanf) または / yx のアークタンジェントを計算します。atan2 または 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
);

パラメーター

  • x, y
    数。

戻り値

π /2 返します atan は– π /2 の範囲で x のアークタンジェントを返します。スコープ – atan2 はπのラジアンにπの y/x のアークタンジェントを返します。x が 0 の場合atan は 0 を返します。atan2 のパラメーターが両方とも 0 の場合0 が返されます。すべての結果を返しますがあります。

atan2 は両方のパラメーターを戻り値の符号の象限を決定します。

入力

SEH 例外

Matherr の例外

± QNAN,IND

[none]

_DOMAIN

解説

atan の関数は x のアークタンジェントを計算します。atan2 は y と x のアークタンジェントを計算します。x が 0 と等しい場合atan2 はπ /2 y 正の場合はを返します y が 0 の場合 y が負であれば - π /2または 0)

atan にストリーミング SIMD 拡張 2 (SSE2) をストリームに使用する実装されています。SSE2 実装の詳細と使用に関する制限事項については _set_SSE2_enable を参照してください。

C++ ではオーバーロードができるためatanatan2 のオーバーロードを呼び出します。C. のプログラムではatanatan2 は受け取り常にを返します。

必要条件

ルーチン

必須ヘッダー

atan, atan2, atanf, atan2f

<math.h>

使用例

// 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;
}
  

同等の .NET Framework 関数

参照

関連項目

浮動小数点サポート

acos、acosf

asin、asinf

cos、cosf、cosh、coshf

_matherr

sin、sinf、sinh、sinhf

tan、tanf、tanh、tanhf

_CIatan

_CIatan2