乘法命令linux,如何在Linux命令行中做基础数学计算/数值运算

news/2024/8/26 14:11:37

b9220aa1d3be149b1b8deee36bc3cb6a.png

Linux bash或命令行可让您执行基本和复杂的算术和布尔运算。诸如expr,jot,bc和factor等命令可帮助您找到复杂问题的最佳数学解决方案。在本文中,我们将描述这些命令并提供示例,这些示例将成为您转向更有用的数学解决方案的基础。

这里以Ubuntu为例,我们已经在Ubuntu 18.04 LTS系统上运行了本文中提到的命令和过程。其他基于LINUX系统终端也一样可以用这里的命令!

我们使用Ubuntu命令行Terminal(终端)来执行所有数学运算。您可以通过系统Dash或Ctrl + Alt + T快捷方式打开终端。

expr命令

在Linux中,expr或expression命令是用于执行数学计算的最常用命令。您可以使用此命令执行加,减,乘,除,增大一个值,甚至比较两个值等功能。在本节中,我们将描述执行上述计算的语法,并介绍如何在Ubuntu/Linux命令行中使用expr命令执行数学运算。

加成

您可以通过expr命令将两个或多个数字相加,如下所示:

$ expr 数字1 +数字2

例:

$ expr 100 + 10

379f769e2e71b614892ee00954d7876a.png

减法

您可以通过expr命令对两个或多个数字进行减法,如下所示:

$expr 数字1 –数字2

例:

$ expr 100 - 10

1c0e388b224bb30b71dcbedb96773448.png

乘法

您可以通过expr命令对两个或多个数字进行乘法运算,如下所示:

$ expr 数字1 \* 数字2

例:

$ expr 10 \* 10

1f2f8e40acb49a7f141bcf15f52e99a3.png

请注意,以下是Linux命令行中数字乘法的错误语法,因为命令行使用简单星号作为对当前目录中所有文件的引用。

$expr  10 * 10

cf93f0a04c9ecd09adcaf58f43fa8b03.png

除法

您可以通过expr命令将一个数除以另一个,如下所示:

$expr 数字1 / 数字2

例:

$ expr 100 / 10

230ecdff0566fae3765d3eb2305bcfb5.png

递增变量

您可以在Linux中首先定义变量,如下所示:

$ count_variable=0

然后,使用以下表达式,并使用expr命令来执行增量操作:

$ count_variable=`expr $count_variable + 1`

现在,当您通过以下命令回显变量值时,它将打印初始定义的变量的增量值。

$ echo $count_variable

27db409a36e3fd846d61bb711b1c7f41.png

比较

通过expr命令,您还可以检查一个数字是否大于另一个数字。

$expr  数字1\>   数字2

例:

$ expr 20 \> 10

295c15a8ad5c28338b122ff0ac51c59e.png

结果值1表示第一个数字大于第二个数字。而结果值0表示第一个数字不大于第二个数字。

例:

$ expr 10 \> 20

835c5b961024b66ac6501d74b7147986.png

通过expr命令,您还可以使用以下语法查看两个数字是否相等:

$ expr 数字1 = 数字2

例子:

$ expr 10 = 10

$ expr 10 = 15

f20a8d9b494c92d0909b248b7e32e77a.png

结果值1表示第一个数字等于第二个数字。而结果值0表示两个数字不相等。

在上面的示例中,我们可以从裸眼看到两个比较数字是否相等。那么该操作有什么用呢?

让我们假设在程序执行过程中,我们想知道几个数字的计算平均值是否等于10。在这里,我们可以充分利用expr命令来将“average”变量的结果与10进行比较,并根据该结果执行进一步的操作。

$ average=10

$ expr $average = 10

f3399a059587b8a253e8f6cfd4a9c327.png

有效利用expr命令

让我们给出一个示例,在此示例中,我们将使用expr命令来计算当有10个孩子和122个糖果时,一个孩子得到多少个糖果。该程序还将计算所有孩子得到相等数量的糖果后剩余的剩余糖果数量。

$ children=10

$ sweets=122

$ PerChildShare=`expr $sweets / $children`

$ RemainingSweets=`expr $sweets - $children \* $PerChildShare`

echo $PerChildShare

echo $RemainingSweets

1b086b3191bd899c94f7be17b0bf4cf2.png

输出完美地显示出每个孩子的平均应得份额是12,还剩下2。

jot命令

Linux jot命令基于您提供的作为起始数字的值以及要在其后查看的值数来创建数字列表。在本节中,我们将描述通过jot执行计算的语法,并介绍如何在Ubuntu命令行中使用jot命令执行数字运算。

您可能首先需要安装Athena-jot才能在Ubuntu上使用jot命令。

输入以下命令作为sudo,因为只有授权人员可以在Ubuntu上添加/删除和配置软件:

$ sudo apt install athena-jot

3920e50a7cba4fe6d522798b12d3587e.png

3920e50a7cba4fe6d522798b12d3587e.png

系统可能会提示您选择“是/否”,以确认继续安装。请输入Y,然后按Enter键继续,软件将被安装到系统上。

输出数字y之后的x个数字

使用jot命令,可以在打印y之后的x个数字。使用以下命令来这样做:

$ jot  x y

以下示例将使您清楚地了解问题:

$ jot 5 1

87e59e17599385385eb0ffcc02a4bfff.png

我们的示例输出在数字1(y)之后显示5个连续(x)值的列表。

在数字y和数字z之间反向打印x个数字

您还可以使用jot命令以在数字y之后反向打印x数量的值,以数字z结尾。使用以下语法来这样做:

$  jot x y z

以下示例将使您清楚地了解问题:

$ jot 9 10 2

70ab2e644d66d68c0536bd88364f48cf.png

我们的示例输出反向显示数字10(y)之前的9(x)个值,直到列表达到数字2(z)。

高效使用jot命令

让我们给出一个例子,在此示例中,我们将使用jot命令从1天(y值)开始打印一月的15天(x值)。

$ for i in `jot 15 1`; do echo January $i; done

这是输出:

0144d82795ceee615220ff7867897c5f.png

我们通过将jot命令的输出用作变量i的输入值来使用for循环。

factor命令

顾名思义,Linux中的factor命令用于计算我们提供的数字的因子分解(factor)值。【因子分解,将一个数字分解为多个质数相乘】

句法:

$  factor 数字

例子:

3d78db4cc7646b25f82c26567e2540bb.png

在上面的示例中,您可以看到factor命令如何打印给定数字中除13之外的多个质数(因子),因为数字13除了自身之外没有其他质数(因子)。

bc命令

在bash中执行复杂操作时,bc命令非常有用。该命令还可以进行比较,处理布尔值并计算平方根,正弦,余弦和切线等。您需要做的就是将数学表达式通过管道传递给bc命令,如下所示:

$ echo “math_expression” | bc

然后,输出显示数学表达式的结果。

例:

$ echo "10+10/2-(2*2)" | bc

3829d1f58ac22021f468a61e4eec7c30.png

计算Pi

由于bc命令可以处理浮点数,您要输入的字符串非常简单。因此可以使用它来将pi的值,按所需的小数位数。

在以下示例中,我们通过指定小数点后四舍五入来打印pi的值。

$ echo "scale=2; 4*a(1)" | bc -l

75f7ab290bb1a1ee3d8850195cb4ce72.png

由于小数位值为2,因此pi的结果保留小数点后两位。

echo "scale=10; 4*a(1)" | bc -l

60b7fa6f8a2076c17ce77e5e9398a076.png

由于小数位值为10,因此pi的结果保留小数点后十位。

执行Bash 数字运算

您可以通过使用一组双括号来执行简单的bash数学。通过这种技术,您可以在bash中执行算术和布尔运算。

算术

可以在Linux bash中执行以下算术运算列表:

+,-

加,减

++,--

递增,递减

*,/,%

乘法,除法,余数

**

指数值

范例1:

$ ((x=10))

$ (( e = e + 5 ))

$ echo $e

范例2:

$ ((x=10))

$ ((x--))

$ echo $e

范例3:

$ ((x=10))

$ ((x=x**2))

$ echo $e

布尔和逻辑

bash数学还允许您在疑问括号内使用布尔值和逻辑表达式来执行数学计算。

例:

$ ((x=10)); ((y=5))

if (( x > y )); then echo $x; fi

ef4aac7179d69145121a69b1cb8bae69.png

本示例比较两个变量,并仅在x的值大于y时输出x的值。

通过本文介绍的命令语法和示例,您现在可以通过Linux bash执行基本的数学运算。这将为您执行更复杂的操作(例如使用bash脚本编写程序)奠定基础。此外,您还可以执行交互式数学,从用户输入值,处理输入,然后根据这些值输出结果。


http://www.niftyadmin.cn/n/4748246.html

相关文章

linux里面编辑命令,Linux中Vi编辑器之简单常用命令Linux中

原标题:Linux中Vi编辑器之简单常用命令Linux中Vi是Linux中最基本的文本编辑器。vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:1) 命令行模式command…

采用灰度分组统计方法实现图像中值滤波

中值滤波是图像处理中常用的一种噪声滤波方法。传统的图像中值滤波代码采用排序方法实现,处理速度主要取决于排序算法,但无论什么排序算法,总离不开大量的元素比较、交换或移动,而这些恰好是当前计算机处理的“弱项”(…

linux内核选项,linux内核选项详解

linux内核选项详解 (11页)本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!14.9 积分General setup(基本属性设置) ->[]prompt for development and/or incomplete code/drivers //显示尚在开发的代码…

暑假总结

暑假总结 暑假生活就这样结束了,一会儿就要搬宿舍了,看看暑假都学了点什么吧! 感情方面: 米老师总说提高班的人会越来越少,等到明年这时候能剩下二十五个就不错,当时总是感觉米老师说得不多,…

linux修复u盘的软件下载,修复U盘合集工具

修复U盘合集工具包含了十多种U盘专用工具,全部都是在系统中为你提供U盘修复和整理功能的实用工具。其中工具非常的齐全,包含了加密、分盘、一键格式化、修复等等。实用说明有U盘的一定要下载一份这个合集包,链接死不补!HPUSBFW 可…

捕获子线程异常 vb.net c#

c# 如果程序里面使用了多线程技术的话!就需要对子线程的异常做出特殊的处理!据我所知,如果没有做特殊处理的话,好像子线程的异常不会抛给主线程,有时会直接在客户端抛出异常(这当然不是我们想要的),更夸张的是,有时直接把程序给强制关闭了!在用户的角度上,就像按了一个关闭按钮…

linux软件时间同步硬件时间,linux系统时间同步,硬件时钟和系统时间同步,时区的设置...

1、时间同步(手动):date -s "2015-07-15 22:13:30"hwclock --systohc (表示系统时间同步到硬件时钟)hwclock --hctosys (表示硬件时钟同步到系统时间)2、根据互联网时间同步:首先查看linux是否有ntp这个软件:rpm -qa | grep ntp如…

VirtualBox 4.0.12 安装Ubuntu 分配数据空间

今天在装VirtualBox的时候,提示有新的版本4.0.12可以使用了,按照我的一贯习惯,马上就下载了下来,进行了安装。装完之后就发生了一个悲剧,按照以前的办法安装完增强功能之后,接着挂载分配的数据空间&#xf…