Linux 數學運算

  • let 命令
a=1
b=2
let c=a+B
echo $c
View Code
let a++
let b++
echo $a $b
View Code
  • []方法

a=1
b=2
echo $[a+b]
echo $[$a+$b]
View Code
  •  (()) 方法

a=1
b=2
echo $((a+b))
View Code
  • expr 方法

a=1
b=2
c=$(expr $a+$b)
echo $c
View Code

注:上面的四種方法僅僅用於整數運算,若是浮點數運算要使用bc這個高級工具ide

sk_lavender@sk-pc:~$ num1=1.1
sk_lavender@sk-pc:~$ num2=2.2
sk_lavender@sk-pc:~$ num3=`echo "$num1 * $num2" | bc`
sk_lavender@sk-pc:~$ echo $num3
2.4
sk_lavender@sk-pc:~$ # 採用scale參數設定小數精度
sk_lavender@sk-pc:~$ num3=`echo "scale=7; $num1 * $num2" | bc`
sk_lavender@sk-pc:~$ echo $num3
2.42
sk_lavender@sk-pc:~$ # 採用bc進行進位制轉換
sk_lavender@sk-pc:~$ # 十進制轉二進制
sk_lavender@sk-pc:~$ num=123
sk_lavender@sk-pc:~$ result=`echo "obase=2; $num" | bc`
sk_lavender@sk-pc:~$ echo $result
1111011
sk_lavender@sk-pc:~$ # 二進制轉十進制
sk_lavender@sk-pc:~$ echo "obase=10;ibase=2; $result" | bc
123
sk_lavender@sk-pc:~$ # 採用bc計算平方以及平方根
sk_lavender@sk-pc:~$ echo "sqrt(100)" | bc
10
sk_lavender@sk-pc:~$ echo "10^10" | bc
10000000000
sk_lavender@sk-pc:~$ 
View Code
相關文章
相關標籤/搜索