Linux コマンドラインを使用して数学計算を実行する

王林
リリース: 2024-01-15 13:39:05
転載
847 人が閲覧しました

グラフィカル デスクトップ環境で電卓が必要な場合は、ずっとクリックするだけで電卓が見つかります。たとえば、Fedora Workstation には、Calculator というツールがすでに含まれています。いくつかの異なる動作モードがあり、たとえば、複雑な数学演算や財務演算を実行できます。しかし、コマンド ラインにも bc という同様のツールが提供されていることをご存知ですか?

bc このツールは、関数電卓、金融電卓、または単純な電卓に期待される機能を提供します。さらに、必要に応じてコマンド ラインからスクリプトを作成することもできます。これにより、複雑な計算を行う必要がある場合にシェル スクリプトで使用できるようになります。

bc は CUPS 印刷サービスなどの他のシステム ソフトウェアでも使用されるため、Fedora システムにすでにインストールされている可能性があります。次のコマンドを使用して確認できます:

リーリー

何らかの理由で上記のコマンドの出力にこれが表示されない場合は、次のコマンドを使用してインストールできます。 リーリー

bc を使用して簡単な数学演算を実行します bc を使用する 1 つの方法は、独自のシェルに入る方法です。そこでは多くの計算を行ごとに実行できます。 「bc」と入力すると、最初にこのプログラムに関する警告が表示されます:

リーリー

これで、計算やコマンドを 1 行に 1 つずつ入力できるようになります:

リーリー

bc は上記の計算式の答えを答えます:

リーリー

ここで他のコマンドを実行することもできます。加算( )、減算(-)、乗算(*)、除算(/)、括弧、指数記号(^)などが使用できます。 bc も、操作の順序など、従来のすべての操作ルールに従うことに注意してください。次の例を試してみてください:

リーリー

bc を終了するには、

Ctrl D キーの組み合わせを使用して「入力終了」信号を bc に送信します。

bc を使用する別の方法は、

echo コマンドを使用して式またはコマンドを渡すことです。次の例は、シェルのパイプ関数 (|) を使用して echo の出力を bc に渡す、電卓での「Hello, world」の例です。 リーリー シェル パイプを使用すると、複数の操作を送信できます。異なる操作を区切るにはセミコロンを使用する必要があります。結果は別の行で返されます。

リーリー ###正確さ###

一部の計算では、bc は精度、つまり小数点以下の桁数の概念を使用します。デフォルトの精度は 0 です。除算演算では常に精度設定が使用されます。したがって、精度を設定しないと、予期しない結果が得られる可能性があります:

リーリー 乗算では、より複雑な精度選択メカニズムが使用されます: リーリー

同時に、関連する加算と減算の演算も同様です:

リーリー

その他の基本システム

bc のもう 1 つの便利な機能は、10 進数以外の数え方を使用できることです。たとえば、16 進数または 2 進数の演算を簡単に実行できます。

ibase および obase

コマンドを使用して、入力および出力の基本システムをそれぞれ設定できます。 ibase を使用すると、それ以降に入力した数値は、新しく定義された基本システム内にあるものとみなされます。 16 進数から 10 進数に変換または演算を実行するには、次のようなコマンドを使用できます。 9 より大きい 16 進数は大文字 (A ~ F) でなければならないことに注意してください: リーリー 結果を 16 進数にするには、

obase

:

を設定する必要があります。
echo 'obase=16; ibase=16; 5F72+C39B' | bc
ログイン後にコピー

下面是一个小技巧。假如你在 shell 中做这些十六进制运算,怎样才能使得输入重新为十进制数呢?答案是使用 ibase 命令,但你必须设定它为在当前进制中与十进制中的 10 等价的值。例如,假如 ibase 被设定为十六进制,你需要输入:

ibase=A
ログイン後にコピー

一旦你执行了上面的命令,所有输入的数字都将是十进制的了,接着你便可以输入 obase=10 来重置输出的进制系统。

结论

上面所提到的只是 bc 所能做到的基础。它还允许你为某些复杂的运算和程序定义函数、变量和循环结构。你可以在你的系统中将这些程序保存为文本文件以便你在需要的时候使用。你还可以在网上找到更多的资源,它们提供了更多的例子以及额外的函数库。快乐地计算吧!


以上がLinux コマンドラインを使用して数学計算を実行するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:linuxprobe.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート