「UNIX/計算」(2011/03/08 (火) 23:16:25) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
&topicpath()
#contents
----
*計算(expr/bc)
**expr
整数演算に利用
***演算子
|BGCOLOR(#0AA):CENTER:演算子|BGCOLOR(#0AA):CENTER:|h
| 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&br()(wiki編集の都合で全角 "|"になってますが正しくは半角です)|
| 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
少数計算が可能
***演算子
|BGCOLOR(#0AA):CENTER:演算子|BGCOLOR(#0AA):CENTER:|h
| 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&br()(wiki編集の都合で全角 "|"になってますが正しくは半角です)|
| 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
----
&link_toppage()
&topicpath()
----
&topicpath()
#contents
----
*計算(expr/bc)
**expr
整数演算に利用
***演算子
|BGCOLOR(#0AA):CENTER:演算子|BGCOLOR(#0AA):CENTER:|h
| N1 + N2 |N1とN2の和|
| N1 - N2 |N1とN2の差|
| N1 \* N2 |N1とN2の積|
| N1 / N2 |N1とN2の商|
| N1 % N2 |N1とN2の剰余|
| N1 &nobold(){|} N2 |N1とN2のOR&br()|
| 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
少数計算が可能
***演算子
|BGCOLOR(#0AA):CENTER:演算子|BGCOLOR(#0AA):CENTER:|h
| 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&nobold(){||}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
----
&link_toppage()
&topicpath()
----
表示オプション
横に並べて表示:
変化行の前後のみ表示: