AWK具有以下内置算术函数-
它以弧度返回(y/x)的反正切。以下示例演示了这一点-
[Learnfk]$awk 'BEGIN { PI=3.14159265 x=-10 y=10 result=atan2 (y,x) * 180/PI; printf "The arc tangent for (x=%f, y=%f) is %f degrees\n", x, y, result }'
在执行此代码时,您将获得以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/awk/awk-arithmetic-functions.html
来源:LearnFk无涯教程网
The arc tangent for (x=-10.000000, y=10.000000) is 135.000000 degrees
此函数返回 expr 的余弦,以弧度表示。以下示例演示了这一点-
[Learnfk]$awk 'BEGIN { PI=3.14159265 param=60 result=cos(param * PI/180.0); printf "The cosine of %f degrees is %f.\n", param, result }'
在执行此代码时,您将获得以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/awk/awk-arithmetic-functions.html
来源:LearnFk无涯教程网
The cosine of 60.000000 degrees is 0.500000.
此函数用于查找变量的指数值。
[Learnfk]$awk 'BEGIN { param=5 result=exp(param); printf "The exponential value of %f is %f.\n", param, result }'
在执行此代码时,您将获得以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/awk/awk-arithmetic-functions.html
来源:LearnFk无涯教程网
The exponential value of 5.000000 is 148.413159.
此函数将 expr 截断为整数值。以下示例演示了这一点-
[Learnfk]$awk 'BEGIN { param=5.12345 result=int(param) print "Truncated value =", result }'
在执行此代码时,您将获得以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/awk/awk-arithmetic-functions.html
来源:LearnFk无涯教程网
Truncated value=5
此函数计算变量的自然对数。
[Learnfk]$awk 'BEGIN { param=5.5 result=log (param) printf "log(%f)=%f\n", param, result }'
在执行此代码时,您将获得以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/awk/awk-arithmetic-functions.html
来源:LearnFk无涯教程网
log(5.500000)=1.704748
此函数返回0到1之间的随机数N,使得0 <= N <1。例如,下面的示例生成三个随机数
[Learnfk]$awk 'BEGIN { print "Random num1 =" , rand() print "Random num2 =" , rand() print "Random num3 =" , rand() }'
在执行此代码时,您将获得以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/awk/awk-arithmetic-functions.html
来源:LearnFk无涯教程网
Random num1=0.237788 Random num2=0.291066 Random num3=0.845814
此函数返回 expr 的正弦值,以弧度表示。以下示例演示了这一点-
[Learnfk]$awk 'BEGIN { PI=3.14159265 param=30.0 result=sin(param * PI /180) printf "The sine of %f degrees is %f.\n", param, result }'
在执行此代码时,您将获得以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/awk/awk-arithmetic-functions.html
来源:LearnFk无涯教程网
The sine of 30.000000 degrees is 0.500000.
此函数返回 expr 的平方根。
[Learnfk]$awk 'BEGIN { param=1024.0 result=sqrt(param) printf "sqrt(%f)=%f\n", param, result }'
在执行此代码时,您将获得以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/awk/awk-arithmetic-functions.html
来源:LearnFk无涯教程网
sqrt(1024.000000)=32.000000
此函数使用种子值生成一个随机数。它使用 expr 作为随机数生成器的新种子。在没有expr的情况下,它将一天中的时间用作种子值。
[Learnfk]$awk 'BEGIN { param=10 printf "srand()=%d\n", srand() printf "srand(%d)=%d\n", param, srand(param) }'
在执行此代码时,您得到以下输出-
srand()=1 srand(10)=1417959587
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)