ウェブサイト検索

Bashにおける浮動小数点数学


小数点を持つ数は浮動小数点数です。浮動小数点数は、2.5、10.8、-5.23などのように、小数点を持つ正の整数および負の整数です。計算時に浮動小数点数を使用する際は、正確性が重要です。

数字を扱う際には、特にシェルスクリプトでの浮動小数点演算を迅速に行うべきです。ただし、初心者がbashで浮動小数点数を評価するのは多くの作業が必要となることがあります。そこで、このチュートリアルでは、bashで浮動小数点演算を行う方法について簡単に説明します。

Bashにおける浮動小数点数学

Bashは整数演算のみをサポートしているため、浮動小数点数を使った計算が必要な場合は、bashの別のユーティリティを使用してください。いくつかのユーティリティを見て、bashで浮動小数点演算を行う方法を見てみましょう。

1. 紀元前

bcコマンドは、bashで任意精度の算術計算を提供するインタラクティブなプロセスです。bcコマンドは、最初に任意のファイルパラメータによって指定された入力ファイルを読み取り、次に標準入力を読み取ります。bcの任意精度計算機を使用すると、加算、減算、乗算、除算などの浮動小数点数学をシェルスクリプトで実行できます。たとえば、次のようなbashファイルがあります:

すべての部門の出力とともに、それも正しいでしょう。

さて、今はbashファイルに戻り、値を任意の数に設定する別の数字を宣言し、冪、平方根などの操作を行います。

ここで、私たちは2.2の平方根を見つけます。これは、すでに私たちのbashファイルで宣言されています。bashファイルを実行すると、私たちの出力はこのようになります:

したがって、bcコマンドを使用してbashで浮動小数点数学を実行することができます。

2. PERL

Perl言語はコンパイルを必要とせず、プラットフォームに依存しないコードを作成できます。また、Perlを使用することで、bashで浮動小数点数の算術処理を行うこともでき、C、C++、csh、sh、grep、awk、sedなどの言語機能をサポートしています。これを行うには、以下のコマンドを実行してください:

perl -e 'print 2.2 + 3.3'
5.5
perl -e 'print 2.2 - 3.3'
-1.1

3. AWK

awkユーティリティを使用すると、効果的でありながら短いプログラムをステートメントとして作成できます。主にawkはパターンのスキャンと処理に使用されます。このコマンドは、1つまたは複数のファイルを検索して、一致する行が含まれているかどうかを確認し、関連するアクションを実行します。awkのパターンスキャンと処理を通じて、シェルスクリプトで浮動小数点の数学を簡単に実行することができます。

任意の浮動小数点数に対して、awkを使用して累乗(**、^)、自然対数(log(x))、平方根(sqrt(x))、アークタンジェント(atan2(y,x))、サイン関数(sin(x))、コサイン関数(cos(x))などを計算できます。

echo - | awk '{print sqrt (3.2)}'
1.78885
echo - | awk '{print s62.5 / 5.5}'
11.3636
echo - | awk '{print sqrt 2.2 ^ 1.3}'
2.78708

まとめ

これは、bashスクリプトでの浮動小数点数学を評価する方法についてのものでした。浮動小数点を計算するには、Perl、Python、Ruby、bc(任意精度計算機)、およびawk(パターンスキャンおよび処理言語)などの異なるプログラミング言語を使用します。必要なのは、bashスクリプトにコマンドを追加し、そのスクリプトを実行することで、望ましい結果を得ることだけです。