サーチ…


DCを使った数学

dcはUnix上で最も古い言語の1つです。

これは逆ポリッシュ表記を使用しています。つまり、最初に積み重ねてから操作します。例えば、 1+1のように記述される1 1+

スタックの一番上から要素を印刷するには、コマンドp使います。

echo '2 3 + p' | dc
5

or

dc <<< '2 3 + p'
5

一番上の要素を何度も印刷することができます

dc <<< '1 1 + p 2 + p'
2
4

負の数の場合は、接頭辞_接頭辞

dc <<< '_1 p'
-1

10 and 15までの数字にはA to F大文字を使用することもでき.小数点以下

dc <<< 'A.4 p'
10.4

dc任意の精度を使用しています。つまり、精度は使用可能なメモリによってのみ制限されます。デフォルトでは、精度は0小数に設定されています

dc <<< '4 3 / p'
1

コマンドkを使って精度を上げることができます。 2kが使用する

dc <<< '2k 4 3 / p'
1.33

dc <<< '4k 4 3 / p'
1.3333

複数行にわたって使用することもできます

dc << EOF
1 1 +
3 *
p
EOF
6

bcdcプリプロセッサです。

BCを使った数学

bcは任意精度の計算機言語です。対話的に使用することも、コマンドラインから実行することもできます。

たとえば、式の結果を出力することができます。

echo '2 + 3' | bc
5

echo '12 / 5' | bc
2

浮動小数点演算では、標準ライブラリbc -lインポートできます。

echo '12 / 5' | bc -l
2.40000000000000000000

これは式の比較に使用できます。

echo '8 > 5' | bc
1

echo '10 == 11' | bc
0

echo '10 == 10 && 8 > 3' | bc
1

bash機能を使用した数学

算術演算は次のような他のプログラムを必要とせずに行うこともできます:

乗算:

echo $((5 * 2))
10

分割:

echo $((5 / 2))
2

モジュロ:

echo $((5 % 2))
1

累乗:

echo $((5 ** 2))
25

exprを使った数学

exprまたはEvaluate expressions評価し、その結果を標準出力に書き込みます

基本的な算術

expr 2 + 3
5

乗算するときは、 *記号をエスケープする必要があります

expr 2 \* 3
6

変数を使用することもできます

a=2
expr $a + 3
5

これは整数だけをサポートしているので、このような式を覚えておいてください

expr 3.0 / 2

expr: not a decimal number: '3.0' というエラーが発生します

パターンにマッチする正規表現をサポートしています

expr 'Hello World' : 'Hell\(.*\)rld'
o Wo

または、検索文字列の最初の文字のインデックスを検索する

Mac OS Xでは、indexコマンドを持たないBSD exprを使うため、これはexpr: syntax errorを投げexpr: syntax errorが、Linuxではexprは一般にGNU exprです

expr index hello l
3

expr index 'hello' 'lo'
3


Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow