sakawork @ ウィキ

メニュー

▼プログラミング言語関連
▼プロトコル関連
▼Web関連



ページ編集支援





リンク





UNIX > 計算


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。


計算(expr/bc)

expr

整数演算に利用

演算子

演算子
N1 + N2 N1とN2の和
N1 - N2 N1とN2の差
N1 \* N2 N1とN2の積
N1 / N2 N1とN2の商
N1 % N2 N1とN2の剰余
N1 | N2 N1とN2のOR
N1 \& N2 N1とN2のAND
\( \) 括弧(優先)
※計算する要素と演算子はスペースで離すこと
 他に > >= < <= = != などの演算子があるが真(1)偽(0)でありシェルのほかの条件判定と逆になっている
 また文字列関連の演算子 ":" "match" "substr" "index" "length"などもある
 機会があったら追記するかも

使用例

$ expr 2 \* 9
18
$ expr \( 2 + 3 \) \* 4
20
$ AAA=`expr 1 + 2`
$ echo $AAA
3
$ AAA=`expr $AAA + 1`
4

bc

少数計算が可能

演算子

演算子
scale=N1 小数点以下N1桁まで表示(デフォルトは0)
N1+N2 N1とN2の和
N1-N2 N1とN2の差
N1*N2 N1とN2の積
N1/N2 N1とN2の商
N1%N2 N1とN2の剰余
N1 || N2 N1とN2のOR
N1&&N2 N1とN2のAND
N1^N2 N1のN2乗
\( \) 括弧(優先)
bc単体で起動した場合はquitで抜ける

使用例

 bcを単体起動した例
$ bc
2*9  ←入力
18
quit

 bcをパイプで使用した例 
$ echo 2*9 |bc
18
$ AAA=3
$ AAA=`echo $AAA*2 |bc`
$ echo $AAA
6

 少数計算
$ echo "scale=3; 1/3 " |bc
.333
$ echo "scale=2; 1000/24 " |bc
41.66

 注意すべき点:剰余はscale=0でないと誤動作する
$ echo 2%3 |bc
2
$ echo "scale=2;2%3" |bc
.02




更新履歴

取得中です。


タグクラウド


アクセス

本日のアクセス
-
昨日のアクセス
-