Linux Shell编程的数学方面 - 第四部分

在这篇文章中我将讨论但从数学数字点在S cripts。 虽然我在以前的帖子贴出了更为复杂的脚本( 简单的计算器 ),但在用户的部分就很难理解,所以我想,让你学习的人学习的其他有用的侧小包。

Shell脚本第4部分

这篇文章之前,Shell脚本三大系列文章发表,他们是:

  1. 了解Linux Shell和基本Shell脚本 - 第一部分
  2. 5 Shell脚本学习Shell编程 - 第二部分
  3. 航行通过Linux的世界BASH脚本 - 第三部分

让我们先从一些新的令人兴奋的脚本进一步的学习过程中,先从数学脚本:

脚本1:添加

创建一个文件“Addition.sh”chmod 755到脚本在以前的帖子中描述并运行它。

#!/bin/bash
echo “Enter the First Number: ” 
read a 
echo “Enter the Second Number: ” 
read b 
x=$(expr "$a" + "$b") 
echo $a + $b = $x
示例输出
[root@youcl ~]# vi Additions.sh
[root@youcl ~]# chmod 755 Additions.sh
[root@youcl ~]# ./Additions.sh
“Enter the First Number: ” 
12 
“Enter the Second Number: ” 
13 
12 + 13 = 25

脚本2:抽象

#!/bin/bash
echo “Enter the First Number: ” 
read a 
echo “Enter the Second Number: ” 
read b 
x=$(($a - $b)) 
echo $a - $b = $x

:在这里,我们更换了EXPR,让壳执行的数学计算。

示例输出
[root@youcl ~]# vi Substraction.sh
[root@youcl ~]# chmod 755 Substraction.sh
[root@youcl ~]# ./Substraction.sh
“Enter the First Number: ” 
13 
“Enter the Second Number: ” 
20 
13 - 20 = -7

脚本3:乘法

到目前为止,您将享受很多,在这样一个简单的方法学习脚本,所以按时间顺序的下一个是乘法

#!/bin/bash
echo “Enter the First Number: ” 
read a 
echo “Enter the Second Number: ” 
read b 
echo "$a * $b = $(expr $a \* $b)"

注意 :是啊! 这里我们没有将乘法的值放在变量中,而是直接在output语句中执行。

示例输出
[root@youcl ~]# vi Multiplication.sh
[root@youcl ~]# chmod 755 Multiplication.sh
[root@youcl ~]# ./Multiplication.sh
“Enter the First Number: ” 
11 
“Enter the Second Number: ” 
11 
11 * 11 = 121

脚本4:部

对! 其次是 ,再次它是一个非常简单的脚本。 检查自己。

#!/bin/bash
echo “Enter the First Number: ” 
read a 
echo “Enter the Second Number: ” 
read b 
echo "$a / $b = $(expr $a / $b)"
示例输出
[root@youcl ~]# vi Division.sh
[root@youcl ~]# chmod 755 Division.sh
[root@youcl ~]# ./Division.sh
“Enter the First Number: ” 
12 
“Enter the Second Number: ” 
3 
12 / 3 = 4

脚本5:表

精细! 什么后这些基本的数学运算。 让我们写一个打印任意数字表的脚本。

#!/bin/bash
echo “Enter The Number upto which you want to Print Table: ” 
read n 
i=1 
while [ $i -ne 10 ] 
do 
i=$(expr $i + 1) 
table=$(expr $i \* $n) 
echo $table 
done
示例输出
[root@youcl ~]# vi Table.sh
[root@youcl ~]# chmod 755 Table.sh
[root@youcl ~]# ./Table.sh
“Enter The Number upto which you want to Print Table: ” 
29 
58 
87 
116 
145 
174 
203 
232 
261 
290

脚本6:EvenOdd

我们作为一个孩子总是进行计算,以找出数字是奇数还是偶数。 在脚本中实现它不是一个好主意。

#!/bin/bash
echo "Enter The Number" 
read n 
num=$(expr $n % 2) 
if [ $num -eq 0 ] 
then 
echo "is a Even Number" 
else 
echo "is a Odd Number" 
fi
示例输出
[root@youcl ~]# vi EvenOdd.sh
[root@youcl ~]# chmod 755 EvenOdd.sh
[root@youcl ~]# ./EvenOdd.sh
Enter The Number 
12 
is a Even Number
[root@youcl ~]# ./EvenOdd.sh
Enter The Number 
11 
is a Odd Number

脚本7:阶乘

接下来是找到阶乘。

#!/bin/bash 
echo "Enter The Number" 
read a 
fact=1 
while [ $a -ne 0 ] 
do 
fact=$(expr $fact \* $a) 
a=$(expr $a - 1) 
done 
echo $fact
示例输出
[root@youcl ~]# vi Factorial.sh
[root@youcl ~]# chmod 755 Factorial.sh
[root@youcl ~]# ./Factorial.sh
Enter The Number 
12 
479001600

现在,您可以用一种感觉放松,在计算12 * 11 * 10 * 9 *如上制成7 * 7 * 6 * 5 * 4 * 3 * 2 * 1会比较困难比一个简单的脚本。 想想,你需要找到99!或者类似的东西的情况。 当然! 这个脚本在这种情况下会非常方便。

脚本8:阿姆斯特朗

阿姆斯特朗号码 哦~~你忘了阿姆斯壮号码是什么。 好的阿姆斯特朗三位数是一个整数,使得它的数字的立方的和等于数字本身。 例如,371是自3 ** 3 + 7 ** 3 + 1 ** 3 = 371阿姆斯壮号码。

#!/bin/bash 
echo "Enter A Number" 
read n 
arm=0 
temp=$n 
while [ $n -ne 0 ] 
do 
r=$(expr $n % 10) 
arm=$(expr $arm + $r \* $r \* $r) 
n=$(expr $n / 10) 
done 
echo $arm 
if [ $arm -eq $temp ] 
then 
echo "Armstrong" 
else 
echo "Not Armstrong" 
fi
示例输出
[root@youcl ~]# vi Armstrong.sh
[root@youcl ~]# chmod 755 Armstrong.sh
[root@youcl ~]# ./Armstrong.sh
Enter A Number 
371 
371 
Armstrong
[root@youcl ~]# ./Armstrong.sh
Enter A Number 
123 
36 
Not Armstrong

脚本9:Prime

最后一个脚本是区分数字是否为素数。

#!/bin/bash 
echo “Enter Any Number”
read n
i=1
c=1
while [ $i -le $n ]
do
i=$(expr $i + 1)
r=$(expr $n % $i)
if [ $r -eq 0 ]
then
c=$(expr $c + 1)
fi
done
if [ $c -eq 2 ]
then
echo “Prime”
else
echo “Not Prime”
fi
示例输出
[root@youcl ~]# vi Prime.sh
[root@youcl ~]# chmod 755 Prime.sh
[root@youcl ~]# ./Prime.sh
“Enter Any Number” 
12 
“Not Prime”

目前为止就这样了。 在我们的下一篇文章中,我们将讨论shell脚本编程语言中的其他数学程序。 不要忘记在评论部分提及您对文章的意见。 喜欢和分享我们,并帮助我们传播。 快来为新闻和文章有关FOSS参观youcl.com。 直到然后请继续关注。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏