回答:
を使用して小数部分の長さを設定できscale=n
ます。
コマンドのecho 'scale=20;752/447' | bc
結果:
1.68232662192393736017
数値がスケール内に収まる場合でも、追加のゼロが追加される場合があることに注意してください。
scale=20
1/2
.50000000000000000000
残念ながら、常に丸めの問題があります。
scale=50
1/3*3
.99999999999999999999999999999999999999999999999999
scale
変数をに渡す必要がありますbc
。役に立つかもしれない唯一の環境変数はBC_ENV_ARGS
です。この変数はにいくつかの引数をbc
設定し、標準の変数または設定を使用してファイルを作成し、設定することができますBC_ENV_ARGS=/path/to/variables/file
。マニュアルページをお読みください。
bc -ql
ます。-q
著作権バナーを隠し(一般に注意をそらす)-l
、数学ライブラリをロードし、自動的にスケールを20に設定します(man bc
。を参照)
calc
(私はパッケージから信じていますapcalc
)はと同じですがbc
、丸めません。に似て表示されますbc
が、とは異なりbc
、科学表記法を理解します。例:
> calc
C-style arbitrary precision calculator (version 2.12.3.3)
Calc is open software. For license details type: help copyright
[Type "exit" to exit, or "help" for help.]
; a=234
; b=a/7
; b
~33.42857142857142857143
; c=b/1e20
; c
~0.00000000000000000033
; c*1e10
~0.00000000334285714286
;
と比較してくださいbc
:
> bc -l
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
a=234
b=a/7
b
33.42857142857142857142
c=b/10^20
c
.00000000000000000033
c*1e10
(standard_in) 6: syntax error
c*10^10
.00000000330000000000
少しの検索で多くの結果が得られますが、そのすべてが関連しているわけではありませんが、いくつかの試行を行うことで、希望どおりの結果(wcalcなど)が得られると確信しています。
aptitude search calc
i apcalc - Arbitrary precision calculator (original name: calc)
i A apcalc-common - Arbitrary precision calculator (common files)
p apcalc-dev - Library for arbitrary precision arithmetic
p bandwidthcalc - file transfer time calculator written in GTK+
p calcoo - Scientific calculator (GTK+)
p calcurse - text-based calendar and todo manager
p concalc - console calculator
p extcalc - multifunctional scientific graphic calculator
p gcalcli - Google Calendar Command Line Interface
i gcalctool - GNOME desktop calculator
p ipcalc - parameter calculator for IPv4 addresses
p ipv6calc - small utility for manipulating IPv6 addresses
p kcalc - calculator for KDE 4
p keurocalc - universal currency converter and calculator - binary package
p keurocalc-data - universal currency converter and calculator - data package
p lcalc - a program for calculating with L-functions
p libcolor-calc-perl - Perl module for simple calculations with RGB colors
p libdate-calc-perl - Perl library for accessing dates
p libdate-pcalc-perl - Perl module for Gregorian calendar date calculations
p libmath-basecalc-perl - Convert numbers between various bases
p libmath-calc-units-perl - Human-readable unit-aware calculator
p libmath-calculus-differentiate-perl - Algebraic Differentiation Engine
p libmath-calculus-expression-perl - Algebraic Calculus Tools Expression Class
p libmath-calculus-newtonraphson-perl - Algebraic Newton Raphson Implementation
p libticalcs-dev - Texas Instruments calculator communication library [development files]
p libticalcs2-7 - Texas Instruments calculator communication library
p libwww-google-calculator-perl - Perl interface for Google calculator
p octave-physicalconstants - provide physical constants values in Octave
i openoffice.org-calc - office productivity suite -- spreadsheet
v openoffice.org2-calc -
p python-ipcalc - perform IP subnet calculations
v python2.6-ipcalc -
p r-cran-epicalc - GNU R Epidemiological calculator
p rpncalc - RPN calculator trying to emulate an HP28S
p science-numericalcomputation - Debian Science Numerical Computation packages
p sipcalc - Advanced console-based ip subnet calculator
p subnetcalc - IPv4/IPv6 Subnet Calculator
p sugar-calculate-activity - calculate activity for the Sugar graphical shell
p tapecalc - a full-screen tape editor that lets the user edit a calculation
p transcalc - microwave and RF transmission line calculator
p wcalc - A flexible command-line scientific calculator
p wmcalclock - A dock.app which simply tells time and date
p xsmc-calc - Smith Chart calculator for X
Pythonをコマンドライン計算機として使用することをお勧めします。
$ python
>>> from math import *
>>> help(sin)
sin(x)
Return the sine of x (measured in radians).
また、IPythonまたはIDLEをお勧めします。どちらも標準シェルの使いやすさを大幅に改善します。
更新:python3を使用して、切り捨ての驚きを回避します。
$ python2.7
>>> 10/3
3
$ python3
>>> 10/3
3.3333333333333335
この意味で精度が失われました。精度を10桁の10進数に設定すると、除算は10桁の10進数に切り捨てられます。これは一貫した選択です。
正確な計算機を探す場合、シンボリックシステムが必要maxima
です。
ところで、bc
変数をサポートしています。
「genius」は、最先端の計算機であり、コマンドラインとGUIの両方のオプションが利用可能です。詳細についてはマニュアルを確認し、http://www.jirka.org/genius.htmlを参照してください。
インストールするには、次のように入力します。
sudo apt-get install genius gnome-genius
あなたがいる場合はoctave
インストールされますが、コマンドラインなどでそれを使用することができます。
octave --silent --eval 752/447
文章を短くするために、以下をエイリアスとして追加できます .bashrc
alias ose='octave --silent --eval'
そして、それをとして呼び出しますose 752/447
。エイリアス/ショートカットは任意ですが、有効にするにはターミナルを再起動する必要があります。
以下octave
を使用してインストールできます。
sudo apt-get install octave
もちろん、octave
使用可能な高度な機能もすべて使用できます。