计算输入弧度的正切值。
C interface:
float tanf(float x);
double tan(double x);
long double tanl(long double x);
Fortran interface:
RES = TANF(X);
RES = TAN(X);
参数名 |
类型 |
描述 |
输入/输出 |
---|---|---|---|
x |
|
表示弧度角的浮点值。 |
输入 |
该函数在π(1/2 + n)处具有数学极点;没有通用的浮点表示能够精确地表示极点处的值,因此极点处会返回值,但不能认为是正确的。
C: "km.h"
C interface:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | double pi = acos(-1); // typical usage double a = pi/3, c = -3*pi/4, d = 0.0; // special handling double b = pi/2, e = INFINITY, f = -INFINITY, g = NAN; double complex k = 0 + 0 * I; // print result printf("tan(pi/3) = %.15f\n", tan(a)); printf("tan(-3*pi/4) = %.15f\n", tan(c)); printf("tan(0.0) = %.15f\n", tan(d)); // mathematical poles printf("tan(pi/2) = %.15f\n", tan(b)); printf("tan(INFINITY) = %.15f\n", tan(e)); printf("tan(-INFINITY) = %.15f\n", tan(f)); printf("tan(NAN) = %.15f\n", tan(g)); /* * tan(pi/3) = 1.732050807568877 * tan(-3*pi/4) = 1.000000000000000 * tan(0.0) = 0.000000000000000 * tan(pi/2) = 16331239353195370.000000000000000 * tan(INFINITY) = nan * tan(-INFINITY) = nan * tan(NAN) = nan * * */ |
Fortran interface:
REAL(8) :: X = 0.0 PRINT*, TAN(X) ! ! OUTPUT ! 0.000000000000000 !