知識の箱
主に気象を研究する上で得た知識と、WEBページ作成のために得た知識を記録しています。
bashでawkを利用して小数点を含む四則演算
整数の場合は、
a=1
a=$((a+1))
a=$(( (a+1)*5 ))
という形でできるが、
少数が入ると、この方法ではエラーが出る。
そこで、awkを使用して強引に計算するほう方がある.
b=150.5/2.35をしたいとき、
a=150.5
b=`echo ${a} |awk ‘{print $1/2.35}’`
これで、b=150.5/2.35をしたことになる。
なお、桁数を制限したい場合は、
a=150.5
b=`echo ${a} |awk ‘{printf (“%4.2f”, $1/2.35)}’`
とする。
%4.2fで右側が少数の桁数
例えば、
“%4.0f”の場合,b=150.5/2.35=64
“%4.1f”の場合,b=150.5/2.35=64.0
“%4.2f”の場合,b=150.5*2.35=64.04
“%4.3f”の場合,b=150.5*2.35=64.043
“%4.4f”の場合,b=150.5*2.35=64.0426
となる。