シェルの数値計算

著作権:スス語アクリジンhttps://blog.csdn.net/weixin_44774638/article/details/91489296

問題
ここでは、以下の主な練習をLinuxのシェル環境の特性に精通している必要があり:
式exprを使用して、$ []、他の整数演算をさせる手段:変数X = 1234の定義は、その後Xおよび四則演算と78のモジュロ結果を算出
達成BCを用いて小数点算術演算:追加の非対話的に4つの10進などの多くのように、上記の計算を繰り返す4つの動作の対話的12.34 56.78結果を計算する
手順
は、次の手順が必要とされる。この場合を達成します。

ステップ:整数演算手段

1)コマンドのexprを使用して
シェルワイルドカードとして回避するために、脱出べき乗算演算子*は、整数算術演算子を計算する際に関与する空間によって分離される必要がある、$記号参照変数を追加しなければなりません。
まず、定義変数X = 1234、78は、次に、モジュロ演算を計算し、結果は以下のとおりです。

[root@svr5 ~]# X=1234  							//定义变量X
[root@svr5 ~]# expr  $X  +  78  					//加法
1312
[root@svr5 ~]# expr  $X  -  78   					//减法
1156
[root@svr5 ~]# expr  $X  \*  78  					//乘法,操作符应添加\转义
96252
[root@svr5 ~]# expr  $X  /  78  					//除法,仅保留整除结果
15
[root@svr5 ~]# expr  $X  %  78 					//求模
64

2)使用 [ ] 若しくは []または (())発現
乗算*算術演算子をエスケープすることなく両側にスペースができ、記号$参照変数を省略することはできない、表現自体は、あるいはその結果、出力は、エコーコマンドを組み合わせることができます。
また、変数X = 1234、及び78のために計算され、演算結果をモジュロました。

[root@svr5 ~]# X=1234   
[root@svr5 ~]# echo $[X+78]
1312
[root@svr5 ~]# echo $[X-78]
1156
[root@svr5 ~]# echo $[X*78]
96252
[root@svr5 ~]# echo $[X/78]
15
[root@svr5 ~]# echo $[X%78]
64

3)letコマンドを使用して
式exprをか [ ] []、 (())のみの動作モード、および変数の値を変更しません;およびコマンドは、変数値の新しい値への保存操作を直接行うことができましょう。従って= 1234変数X、操作を行うことにより得られた値は、変更をできるようになる。また、演算結果が表示されていないが、エコーコマンドに関連して見ることができましょう。

[root@svr5 ~]# X=1234  
[root@svr5 ~]# let X+=78 ; echo $X
1312
[root@svr5 ~]# let X-=78 ; echo $X 
1234
[root@svr5 ~]# let X*=78 ; echo $X 
96252
[root@svr5 ~]# let X/=78 ; echo $X 
1234
[root@svr5 ~]# let X%=78 ; echo $X 
64

ステップ2:小数の算術手段

1)対話操作bcの
BC指令は、対話型環境を入力して計算する式を入力する前に。例えば以下のように小数点算術5.678 12.34四を計算するために、関連します。

[root@svr5 ~]# bc 
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
12.34+56.78										//加法
69.12
12.34-56.78										//减法
-44.44
12.34*56.78										//乘法
700.66
12.34/56.78										//除法
0
quit  											//退出交互计算器
[root@svr5 ~]#

2)非対話型操作紀元前
あなたはライン操作によってBC演算式にする必要があります。なお、小数点以下の長さは= Nはまた、数値演算の影響に関与する小数による以外、制限することができるスケール。例えば以下のように小数点算術5.678 12.34四を計算するために、関連します。

[root@svr5 ~]# echo 'scale=4;12.34+5.678' | bc
18.018
[root@svr5 ~]# echo 'scale=4;12.34-5.678' | bc 
6.662
[root@svr5 ~]# echo 'scale=4;12.34*5.678' | bc 
70.0665
[root@svr5 ~]# echo 'scale=4;12.34/5.678' | bc 
2.1733

おすすめ

転載: blog.csdn.net/weixin_44774638/article/details/91489296