1818IP-服务器技术教程,云服务器评测推荐,服务器系统排错处理,环境搭建,攻击防护等

当前位置:首页 - 运维 - 正文

君子好学,自强不息!

Linux/Unix下常用数学计算

2022-11-18 | 运维 | 1818ip | 672°c
A+ A-

有时候我们需要做一些简单的计算,

如:1.1^10 应该是多少,计算一些百分率等等小事情,如果在windows下我们就知道回去用计算器了,Linux/Unix下怎么办呢。

会写C当然很快就可以解决了。但有点大才小用了,以前我一直使用gdb下的print来做,但有时候还是不大好,如: 1.1^10这样的计算目前还不知道怎么解决,简单了了解了一下,原来shell中的***的awk就可以帮我们了。

看一些简单的事例:

[oracle@asm tmp]$ gdb

GNU gdb Red Hat Linux (6.3.0.0-1.63rh)

Copyright 2004 Free Software Foundation, Inc.

GDB is free software, covered by the GNU General Public License, and you are

welcome to change it and/or distribute copies of it under certain conditions.

Type “show copying” to see the conditions.

There is absolutely no warranty for GDB. Type “show warranty” for details.

This GDB was configured as “i386-redhat-linux-gnu”.

(gdb) p 1.4*123.324*3

$1 = 517.96079999999995

(gdb) p /x 1.4*123.324*3

$2 = 0x205

(gdb) p /x 4*24

$3 = 0x60

(gdb)

[oracle@asm tmp]$ echo | awk ‘{print 1.1*2*23.34;}’

51.348

[oracle@asm tmp]$ awk ‘BEGIN {print (1.25^10);}’

9.31323

awk 支持不少常见的运算符, 如:

+ (加),- (减), * (乘), / (除), ^ 或 **(乘方), % 取模) 等等。

此外, awk 也提供了一些常用的数学函数, 比如 sin(x), cos(x), exp(x), log(x), sqrt(x), rand()。 使用这些运算符和函数可以直接进行一些简单的运算:

[oracle@asm tmp]$ echo | awk ‘{print sin(2);}’

0.909297

如果比会使用的话这个其实比使用windows下的计算器,C写的小程序要的来的快多了。

本文来源:1818IP

本文地址:https://www.1818ip.com/post/10087.html

免责声明:本文由用户上传,如有侵权请联系删除!

发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。