本节详细介绍算术函数、类型转换函数、三角函数以及其他函数。“a”代表函数的单个参数,“a1”和“a2”代表两个参数函数的第一个参数和第二个参数,“ar”和“ai”代表函数的复数参数的实部和虚部。
内函数 |
定义 |
参数 数量 |
通用 名称 |
专用 名称 |
参数 类型 |
函数类型 |
---|---|---|---|---|---|---|
绝对值 请参见注释 (6)。 |
|a| = (ar2+ai2)1/2 |
1 |
ABS |
IABS ABS DABS CABS QABS ¤ ZABS ¤ CDABS ¤ CQABS ¤ |
INTEGER REAL DOUBLE COMPLEX REAL*16 DOUBLE COMPLEX DOUBLE COMPLEX COMPLEX*32 |
INTEGER REAL DOUBLE REAL REAL*16 DOUBLE DOUBLE REAL*16 |
截断 请参见注释 (1)。 |
int(a) |
1 |
AINT |
AINT DINT QINT ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
最近的整数 |
如果 a ≥ 0,则为 int(a+.5) 如果 a < 0,则为 int(a-.5) |
1 |
ANINT |
ANINT DNINT QNINT ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
最近的整数 |
如果 a ≥ 0,则为 int(a+.5) 如果 a < 0,则为 int(a-.5) |
1 |
NINT |
NINT IDNINT IQNINT ¤ |
REAL DOUBLE REAL*16 |
INTEGER INTEGER INTEGER |
余数 请参见注释 (1)。 |
a1-int(a1/a2)*a2 |
2 |
MOD |
MOD AMOD DMOD QMOD ¤ |
INTEGER REAL DOUBLE REAL*16 |
INTEGER REAL DOUBLE REAL*16 |
符号传输 |
如果 a2 ≥ 0,则为 |a1| 如果 a2 < 0,则为 -|a1| |
2 |
SIGN |
ISIGN SIGN DSIGN QSIGN ¤ |
INTEGER REAL DOUBLE REAL*16 |
INTEGER REAL DOUBLE REAL*16 |
正偏差 |
如果 a1 > a2,则为 a1-a2 如果 a1≤ a2,则为 0 |
2 |
DIM |
IDIM DIM DDIM QDIM ¤ |
INTEGER REAL DOUBLE REAL*16 |
INTEGER REAL DOUBLE REAL*16 |
两倍和四倍乘积 |
a1 * a2 |
2 |
- |
DPROD QPROD ¤ |
REAL DOUBLE |
DOUBLE REAL*16 |
选择最大的值 |
max(a1, a2, …) |
≥2 |
MAX |
MAX0 AMAX1 DMAX1 QMAX1 ¤ |
INTEGER REAL DOUBLE REAL*16 |
INTEGER REAL DOUBLE REAL*16 |
AMAX0 |
AMAX0 |
INTEGER |
REAL |
|||
MAX1 |
MAX1 |
REAL |
INTEGER |
|||
选择最小的值 |
min(a1, a2, …) |
≥2 |
MIN |
MIN0 AMIN1 DMIN1 QMIN1 ¤ |
INTEGER REAL DOUBLE REAL*16 |
INTEGER REAL DOUBLE REAL*16 |
AMIN0 |
AMIN0 |
INTEGER |
REAL |
|||
MIN1 |
MIN1 |
REAL |
INTEGER |
转换为 |
参数数量 |
通用名称 |
专用 名称 |
参数类型 |
函数类型 |
||
---|---|---|---|---|---|---|---|
INTEGER
|
1 |
INT |
- INT IFIX IDINT - - - IQINT ¤ |
INTEGER REAL REAL DOUBLE COMPLEX COMPLEX*16 COMPLEX*32 REAL*16 |
INTEGER INTEGER INTEGER INTEGER INTEGER INTEGER INTEGER INTEGER |
||
REAL
|
1 |
REAL |
REAL FLOAT - SNGL SNGLQ ¤ - - - FLOATK |
INTEGER INTEGER REAL DOUBLE REAL*16 COMPLEX COMPLEX*16 COMPLEX*32 INTEGER*8 |
REAL REAL REAL REAL REAL REAL REAL REAL REAL*4 |
||
DOUBLE
|
1 |
DBLE |
DBLE DFLOAT DFLOATK DREAL ¤ - - - - - DBLEQ ¤- |
INTEGER INTEGER INTEGER*8 REAL DOUBLE COMPLEX COMPLEX*16 REAL*16 COMPLEX*32REAL*16COMPLEX*32 |
DOUBLE PRECISION DOUBLE PRECISION DOUBLE PRECISION DOUBLE PRECISION DOUBLE PRECISION DOUBLE PRECISION DOUBLE PRECISION DOUBLE PRECISION DOUBLE PRECISIONDOUBLE PRECISION DOUBLE PRECISION |
||
|
1 |
QREAL¤ QEXT ¤ |
QREAL ¤ QFLOAT ¤ - QEXT ¤ QEXTD ¤ - - - - |
INTEGER INTEGER REAL INTEGER DOUBLE REAL*16 COMPLEX COMPLEX*16 COMPLEX*32 |
REAL*16 REAL*16 REAL*16 REAL*16 REAL*16 REAL*16 REAL*16 REAL*16 REAL*16 |
||
|
1 个或 2 个 |
|
- - - - - - - |
INTEGER REAL DOUBLE REAL*16 COMPLEX COMPLEX*16 COMPLEX*32 |
COMPLEX COMPLEX COMPLEX COMPLEX COMPLEX COMPLEX COMPLEX |
||
|
1 个或 2 个 |
|
- - - - - - - |
INTEGER REAL DOUBLE REAL*16 COMPLEX COMPLEX*16 COMPLEX*32 |
DOUBLE COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX |
||
|
1 个或 2 个 |
|
- - - - - - - |
INTEGER REAL DOUBLE REAL*16 COMPLEX COMPLEX*16 COMPLEX*32 |
COMPLEX*32 COMPLEX*32 COMPLEX*32 COMPLEX*32 COMPLEX*32 COMPLEX*32 COMPLEX*32 |
||
|
1 |
|
ICHAR IACHAR ¤ |
CHARACTER |
INTEGER |
||
|
1 |
|
CHAR ACHAR ¤ |
INTEGER |
CHARACTER |
在 ASCII 平台上(包括 Sun 系统):
ACHAR 是 CHAR 的非标准同义词
IACHAR 是 ICHAR 的非标准同义词
在非 ASCII 平台上,ACHAR 和 IACHAR 专门用于提供一种直接处理 ASCII 的方法。
内函数 |
定义 |
参数数量 |
通用名称 |
专用 名称 |
参数类型 |
函数类型 |
---|---|---|---|---|---|---|
正弦 请参见注释 (7)。 |
sin(a) |
1 |
SIN |
SIN DSIN QSIN ¤ CSIN ZSIN ¤ CDSIN ¤ CQSIN ¤ |
REAL DOUBLE REAL*16 COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX COMPLEX*32 |
REAL DOUBLE REAL*16 COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX COMPLEX*32 |
正弦(度数) 请参见注释 (7)。 |
sin(a) |
1 |
SIND ¤ |
SIND ¤ DSIND ¤ QSIND ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
余弦 请参见注释 (7)。 |
cos(a) |
1 |
COS |
COS DCOS QCOS ¤ CCOS ZCOS ¤ CDCOS ¤ CQCOS ¤ |
REAL DOUBLE REAL*16 COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX COMPLEX*32 |
REAL DOUBLE REAL*16 COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX COMPLEX*32 |
余弦(度数) 请参见注释 (7)。 |
cos(a) |
1 |
COSD ¤ |
COSD ¤ DCOSD ¤ QCOSD ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
正切 请参见注释 (7)。 |
tan(a) |
1 |
TAN |
TAN DTAN QTAN ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
正切(度数) 请参见注释 (7)。 |
tan(a) |
1 |
TAND ¤ |
TAND ¤ DTAND ¤ QTAND ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
反正弦 请参见注释 (7)。 |
arcsin(a) |
1 |
ASIN |
ASIN DASIN QASIN ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
反正弦(度数) 请参见注释 (7)。 |
arcsin(a) |
1 |
ASIND ¤ |
ASIND ¤ DASIND ¤ QASIND ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
反余弦 请参见注释 (7)。 |
arccos(a) |
1 |
ACOS |
ACOS DACOS QACOS ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
反余弦(度数) 请参见注释 (7)。 |
arccos(a) |
1 |
ACOSD ¤ |
ACOSD ¤ DACOSD ¤ QACOSD ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
反正切 请参见注释 (7)。 |
arctan(a) |
1 |
ATAN |
ATAN DATAN QATAN ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
arctan (a1/a2) |
2 |
ATAN2 |
ATAN2 DATAN2 QATAN2 ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
|
反正切(度数) 请参见注释 (7)。 |
arctan(a) |
1 |
ATAND ¤ |
ATAND ¤ DATAND ¤ QATAND ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
arctan (a1/a2) |
2 |
ATAN2D¤ |
ATAN2D ¤ DATAN2D ¤ QATAN2D ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
|
双曲正弦 请参见注释 (7)。 |
sinh(a) |
1 |
SINH |
SINH DSINH QSINH ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
双曲余弦 请参见注释 (7)。 |
cosh(a) |
1 |
COSH |
COSH DCOSH QCOSH ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
双曲正切 请参见注释 (7)。 |
tanh(a) |
1 |
TANH |
TANH DTANH QTANH ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
内函数 |
定义 |
参数数量 |
通用名称 |
专用名称 |
参数类型 |
函数类型 |
---|---|---|---|---|---|---|
复数的虚部 请参见注释 (6)。 |
ai |
1 |
IMAG |
AIMAG DIMAG ¤ QIMAG ¤ |
COMPLEX DOUBLE COMPLEX COMPLEX*32 |
REAL DOUBLE REAL*16 |
共轭复数 请参见注释 (6)。 |
(ar, -ai) |
1 |
CONJG |
CONJG DCONJG ¤ QCONJG ¤ |
COMPLEX DOUBLE COMPLEX COMPLEX*32 |
COMPLEX DOUBLE COMPLEX COMPLEX*32 |
平方根 |
a**(1/2) |
1 |
SQRT |
SQRT DSQRT QSQRT ¤ CSQRT ZSQRT ¤ CDSQRT ¤ CQSQRT ¤ |
REAL DOUBLE REAL*16 COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX COMPLEX*32 |
REAL DOUBLE REAL*16 COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX COMPLEX*32 |
立方根 请参见注释 (8’)。 |
a**(1/3) |
1 |
CBRT |
CBRT ¤ DCBRT ¤ QCBRT ¤ CCBRT ¤ ZCBRT ¤ CDCBRT ¤ CQCBRT ¤ |
REAL DOUBLE REAL*16 COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX COMPLEX*32 |
REAL DOUBLE REAL*16 COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX COMPLEX*32 |
指数 |
e**a |
1 |
EXP |
EXP DEXP QEXP ¤ CEXP ZEXP ¤ CDEXP ¤ CQEXP ¤ |
REAL DOUBLE REAL*16 COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX COMPLEX*32 |
REAL DOUBLE REAL*16 COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX COMPLEX*32 |
自然对数 |
log(a) |
1 |
LOG |
ALOG DLOG QLOG ¤ CLOG ZLOG ¤ CDLOG ¤ CQLOG ¤ |
REAL DOUBLE REAL*16 COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX COMPLEX*32 |
REAL DOUBLE REAL*16 COMPLEX DOUBLE COMPLEX DOUBLE COMPLEX COMPLEX*32 |
常用对数 |
log10(a) |
1 |
LOG10 |
ALOG10 DLOG10 QLOG10 ¤ |
REAL DOUBLE REAL*16 |
REAL DOUBLE REAL*16 |
误差函数 (请参见下面的注释) |
erf(a) |
1 |
ERF |
ERF ¤ DERF ¤ |
REAL DOUBLE |
REAL DOUBLE |
误差函数 |
1.0 - erf(a) |
1 |
ERFC |
ERFC ¤ DERFC ¤ |
REAL DOUBLE |
REAL DOUBLE |
误差函数:exp(-t*t) dt 从 0 到 a 的 2/sqrt(pi) x 整数