別のキーワード
種類
- インスタンスメソッド (30)
- モジュール関数 (11)
- 特異メソッド (4)
クラス
- BigDecimal (30)
- Float (2)
- NilClass (1)
- Rational (1)
キーワード
- % (1)
- == (1)
- === (1)
- BigDecimal (2)
- E (1)
- PI (1)
-
_ dump (1) - abs (1)
- atan (1)
- ceil (2)
- coerce (1)
- cos (1)
- divmod (1)
-
double
_ fig (1) - eql? (1)
- exp (1)
- floor (2)
- inspect (1)
- limit (1)
- log (1)
- lusolve (1)
- mode (2)
- modulo (1)
- nonzero? (1)
- remainder (1)
- round (3)
- sign (1)
- sin (1)
- split (1)
- sqrt (1)
-
to
_ d (4) -
to
_ s (2) - truncate (2)
- zero? (1)
検索結果
先頭5件
-
BigDecimal
# to _ s -> String (187.0) -
self を文字列に変換します (デフォルトは "0.xxxxxen" の形になります)。
...[ruby]{
require "bigdecimal"
BigDecimal("1.23456").to_s # ==> "0.123456e1"
//}
引数 n に正の整数が指定されたときは、小数点で分けられる左右部分を、
それぞれ n 桁毎に空白で区切ります。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("0.123456789012......1234567890 123456789e0"
//}
引数 n に正の整数を表す文字列を指定することもできます。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("0.1234567890123456789").to_s("10") # => "0.1234567890 123456789e0"
//}
文字列の最初に '+' または ' ' を付けると、値が......す。負の場合は常に '-' が付きます。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("0.123456").to_s(" 3") # => " 0.123 456e0"
BigDecimal("0.123456").to_s("+3") # => "+0.123 456e0"
BigDecimal("-0.123456").to_s("3") # => "-0.123 456e0"
//}
さらに文字列の最後に指数形式... -
BigDecimal
# to _ s(n) -> String (187.0) -
self を文字列に変換します (デフォルトは "0.xxxxxen" の形になります)。
...[ruby]{
require "bigdecimal"
BigDecimal("1.23456").to_s # ==> "0.123456e1"
//}
引数 n に正の整数が指定されたときは、小数点で分けられる左右部分を、
それぞれ n 桁毎に空白で区切ります。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("0.123456789012......1234567890 123456789e0"
//}
引数 n に正の整数を表す文字列を指定することもできます。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("0.1234567890123456789").to_s("10") # => "0.1234567890 123456789e0"
//}
文字列の最初に '+' または ' ' を付けると、値が......す。負の場合は常に '-' が付きます。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("0.123456").to_s(" 3") # => " 0.123 456e0"
BigDecimal("0.123456").to_s("+3") # => "+0.123 456e0"
BigDecimal("-0.123456").to_s("3") # => "-0.123 456e0"
//}
さらに文字列の最後に指数形式... -
BigDecimal
. double _ fig -> Integer (139.0) -
Ruby の Float クラスが保持できる有効数字の数を返します。
...Ruby の Float クラスが保持できる有効数字の数を返します。
//emlist[][ruby]{
require 'bigdecimal'
p BigDecimal::double_fig # ==> 16 (depends on the CPU etc.)
//}
double_figは以下の C プログラムの結果と同じです。
double v = 1.0;
int double_fig = 0;... -
BigDecimal
# coerce(other) -> Array (115.0) -
self と other が同じクラスになるよう、self か other を変換し [other, self] という配列にして返します。
...ェクト
BigDecimal#coerce は Ruby における強制型変換のための機能です。
BigDecimal オブジェクトとその他のオブジェクト間の各種の計算は
BigDecimal#coerce の結果を元に行われます。
//emlist[][ruby]{
require "bigdecimal"
a = BigDecimal("1.0")
b =......に Rational オブジェクトを指定した場合は self の有効桁数を
用いて変換を行います。
数値を表す文字列から BigDecimal オブジェクトに変換する機能はデフォ
ルトでは無効になっています。必要な場合は ENABLE_NUMERIC_STRING を有... -
BigDecimal
# round -> Integer (115.0) -
クラスメソッド BigDecimal.mode(BigDecimal::ROUND_MODE,flag) で指定した BigDecimal::ROUND_MODE に従って丸め操作を実行します。
...クラスメソッド BigDecimal.mode(BigDecimal::ROUND_MODE,flag) で指定した
BigDecimal::ROUND_MODE に従って丸め操作を実行します。
@param n 小数点以下の桁数を整数で指定します。
@param b 丸め処理の方式として、BigDecimal.mode の第 1 引数と同......
BigDecimal.mode(BigDecimal::ROUND_MODE,flag) で何も指定せず、
かつ、引数を指定しない場合は
「小数点以下第一位の数を四捨五入して整数(BigDecimal 値)」にします。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").round # => 1
BigDecimal("-......e "bigdecimal"
BigDecimal("1.23456").round(4).to_f # => 1.2346
BigDecimal("15.23456").round(-1).to_f # => 20.0
//}
2番目の引数を指定すると、BigDecimal.mode の指定を無視して、指定さ
れた方法で丸め操作を実行します。
//emlist[][ruby]{
require "bigdecimal"
B... -
BigDecimal
# round(n) -> BigDecimal (115.0) -
クラスメソッド BigDecimal.mode(BigDecimal::ROUND_MODE,flag) で指定した BigDecimal::ROUND_MODE に従って丸め操作を実行します。
...クラスメソッド BigDecimal.mode(BigDecimal::ROUND_MODE,flag) で指定した
BigDecimal::ROUND_MODE に従って丸め操作を実行します。
@param n 小数点以下の桁数を整数で指定します。
@param b 丸め処理の方式として、BigDecimal.mode の第 1 引数と同......
BigDecimal.mode(BigDecimal::ROUND_MODE,flag) で何も指定せず、
かつ、引数を指定しない場合は
「小数点以下第一位の数を四捨五入して整数(BigDecimal 値)」にします。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").round # => 1
BigDecimal("-......e "bigdecimal"
BigDecimal("1.23456").round(4).to_f # => 1.2346
BigDecimal("15.23456").round(-1).to_f # => 20.0
//}
2番目の引数を指定すると、BigDecimal.mode の指定を無視して、指定さ
れた方法で丸め操作を実行します。
//emlist[][ruby]{
require "bigdecimal"
B... -
BigDecimal
# round(n , b) -> BigDecimal (115.0) -
クラスメソッド BigDecimal.mode(BigDecimal::ROUND_MODE,flag) で指定した BigDecimal::ROUND_MODE に従って丸め操作を実行します。
...クラスメソッド BigDecimal.mode(BigDecimal::ROUND_MODE,flag) で指定した
BigDecimal::ROUND_MODE に従って丸め操作を実行します。
@param n 小数点以下の桁数を整数で指定します。
@param b 丸め処理の方式として、BigDecimal.mode の第 1 引数と同......
BigDecimal.mode(BigDecimal::ROUND_MODE,flag) で何も指定せず、
かつ、引数を指定しない場合は
「小数点以下第一位の数を四捨五入して整数(BigDecimal 値)」にします。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").round # => 1
BigDecimal("-......e "bigdecimal"
BigDecimal("1.23456").round(4).to_f # => 1.2346
BigDecimal("15.23456").round(-1).to_f # => 20.0
//}
2番目の引数を指定すると、BigDecimal.mode の指定を無視して、指定さ
れた方法で丸め操作を実行します。
//emlist[][ruby]{
require "bigdecimal"
B... -
BigDecimal
# ceil -> Integer (79.0) -
self 以上の整数のうち、最も小さい整数を計算し、その値を返します。
...その値を返します。
@param n 小数点以下の桁数を整数で指定します。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").ceil # => 2
BigDecimal("-1.23456").ceil # => -1
//}
以下のように引数を与えて、小数点以下 n+1 位の数字を操作するこ......桁にします)。
n が負のときは小数点以上 n 桁目を操作します
(小数点位置から左に少なくとも n 個の 0 が並びます)。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").ceil(4).to_f # => 1.2346
BigDecimal("15.23456").ceil(-1).to_f # => 20.0
//}... -
BigDecimal
# ceil(n) -> BigDecimal (79.0) -
self 以上の整数のうち、最も小さい整数を計算し、その値を返します。
...その値を返します。
@param n 小数点以下の桁数を整数で指定します。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").ceil # => 2
BigDecimal("-1.23456").ceil # => -1
//}
以下のように引数を与えて、小数点以下 n+1 位の数字を操作するこ......桁にします)。
n が負のときは小数点以上 n 桁目を操作します
(小数点位置から左に少なくとも n 個の 0 が並びます)。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").ceil(4).to_f # => 1.2346
BigDecimal("15.23456").ceil(-1).to_f # => 20.0
//}... -
BigDecimal
# floor -> Integer (79.0) -
self 以下の最大整数を返します。
...大整数を返します。
@param n 小数点以下の桁数を整数で指定します。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").floor # => 1
BigDecimal("-1.23456").floor # => -2
//}
以下のように引数 n を与えることもできます。
n >= 0 なら、小数......にします)。
n が負のときは小数点以上 n 桁目を操作します
(小数点位置から左に少なくとも n 個の 0 が並びます)。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").floor(4).to_f # => 1.2345
BigDecimal("15.23456").floor(-1).to_f # => 10.0
//}... -
BigDecimal
# floor(n) -> BigDecimal (79.0) -
self 以下の最大整数を返します。
...大整数を返します。
@param n 小数点以下の桁数を整数で指定します。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").floor # => 1
BigDecimal("-1.23456").floor # => -2
//}
以下のように引数 n を与えることもできます。
n >= 0 なら、小数......にします)。
n が負のときは小数点以上 n 桁目を操作します
(小数点位置から左に少なくとも n 個の 0 が並びます)。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").floor(4).to_f # => 1.2345
BigDecimal("15.23456").floor(-1).to_f # => 10.0
//}... -
BigDecimal
# split -> [Integer , String , Integer , Integer] (79.0) -
BigDecimal 値を 0.xxxxxxx*10**n と表現したときに、 符号 (NaNのときは 0、それ以外は+1か-1になります)、 仮数部分の文字列("xxxxxxx")と、基数(10)、更に指数 n を配列で返します。
...
BigDecimal 値を 0.xxxxxxx*10**n と表現したときに、
符号 (NaNのときは 0、それ以外は+1か-1になります)、
仮数部分の文字列("xxxxxxx")と、基数(10)、更に指数 n を配列で返します。
//emlist[][ruby]{
require "bigdecimal"
a = BigDecimal("3.14159265")
f......, x, y, z = a.split
//}
とすると、f = 1、x = "314159265"、y = 10、z = 1 になります。
従って、以下のようにする事で Float に変換することができます。
//emlist[][ruby]{
s = "0."+x
b = f*(s.to_f)*(y**z)
//}
@see BigDecimal#to_f... -
BigDecimal
. mode(s) -> Integer | nil (79.0) -
BigDecimal の計算処理の制御方法を設定、確認します。
...
BigDecimal の計算処理の制御方法を設定、確認します。
第2引数を省略、または nil を指定すると現状の設定値を返します。
@param s 制御方法の設定、確認を行う項目を BigDecimal::EXCEPTION_*、
BigDecimal::ROUND_MODE のいずれか......で指定します。
@param v 引数 s が BigDecimal::ROUND_MODE の場合は
BigDecimal::ROUND_MODE 以外の BigDecimal::_ROUND* のいず
れかを指定します。指定した丸め処理が有効になります。
それ以外の場合は、true、false、nil の......uire 'bigdecimal'
flag = false # デフォルト値
f = BigDecimal::mode(BigDecimal::EXCEPTION_NaN,flag)
f = BigDecimal::mode(BigDecimal::EXCEPTION_INFINITY,flag)
f = BigDecimal::mode(BigDecimal::EXCEPTION_UNDERFLOW,flag)
f = BigDecimal::mode(BigDecimal::EXCEPTION_OVERFLOW,flag)
f = BigDecimal::mode... -
BigDecimal
. mode(s , v) -> Integer | nil (79.0) -
BigDecimal の計算処理の制御方法を設定、確認します。
...
BigDecimal の計算処理の制御方法を設定、確認します。
第2引数を省略、または nil を指定すると現状の設定値を返します。
@param s 制御方法の設定、確認を行う項目を BigDecimal::EXCEPTION_*、
BigDecimal::ROUND_MODE のいずれか......で指定します。
@param v 引数 s が BigDecimal::ROUND_MODE の場合は
BigDecimal::ROUND_MODE 以外の BigDecimal::_ROUND* のいず
れかを指定します。指定した丸め処理が有効になります。
それ以外の場合は、true、false、nil の......uire 'bigdecimal'
flag = false # デフォルト値
f = BigDecimal::mode(BigDecimal::EXCEPTION_NaN,flag)
f = BigDecimal::mode(BigDecimal::EXCEPTION_INFINITY,flag)
f = BigDecimal::mode(BigDecimal::EXCEPTION_UNDERFLOW,flag)
f = BigDecimal::mode(BigDecimal::EXCEPTION_OVERFLOW,flag)
f = BigDecimal::mode... -
NilClass
# to _ d -> BigDecimal (76.0) -
BigDecimal オブジェクトの 0.0 を返します。
...
BigDecimal オブジェクトの 0.0 を返します。
Ruby 2.6 で追加されたメソッドです。
//emlist[][ruby]{
require "bigdecimal"
require "bigdecimal/util"
p nil.to_d # => 0.0
//}... -
BigDecimal
# %(n) -> BigDecimal (43.0) -
self を n で割った余りを返します。
...指定します。
//emlist[][ruby]{
require 'bigdecimal'
x = BigDecimal((2**100).to_s)
( x % 3).to_i # => 1
(-x % 3).to_i # => 2
( x % -3).to_i # => -2
(-x % -3).to_i # => -1
//}
戻り値は n と同じ符号になります。これは BigDecimal#remainder とは
異なる点に注意してく... -
BigDecimal
# ==(other) -> bool (43.0) -
self が other と等しい場合に true を、そうでない場合に false を返します。
...self が other と等しい場合に true を、そうでない場合に false を返します。
それぞれの値は BigDecimal#coerce で変換して比較される場合があります。
//emlist[][ruby]{
require 'bigdecimal'
BigDecimal('1.0') == 1.0 # => true
//}... -
BigDecimal
# ===(other) -> bool (43.0) -
self が other と等しい場合に true を、そうでない場合に false を返します。
...self が other と等しい場合に true を、そうでない場合に false を返します。
それぞれの値は BigDecimal#coerce で変換して比較される場合があります。
//emlist[][ruby]{
require 'bigdecimal'
BigDecimal('1.0') == 1.0 # => true
//}... -
BigDecimal
# _ dump -> String (43.0) -
BigDecimal._load で復元可能な文字列を返します。 Marshal.#dump から呼び出されます。
...
BigDecimal._load で復元可能な文字列を返します。
Marshal.#dump から呼び出されます。
//emlist[][ruby]{
require 'bigdecimal'
inf = BigDecimal('Infinity') # => Infinity
s = Marshal.dump(inf) # => "\x04\bu:\x0FBigDecimal\x0F9:Infinity"
Marshal.load(s) # => I......nfinity
//}
@see BigDecimal._load, Marshal.#dump, Marshal.#load... -
BigDecimal
# abs -> BigDecimal (43.0) -
self の絶対値を返します。
...self の絶対値を返します。
//emlist[][ruby]{
require 'bigdecimal'
BigDecimal('5').abs.to_i # => 5
BigDecimal('-3').abs.to_i # => 3
//}... -
BigDecimal
# divmod(n) -> [BigDecimal , BigDecimal] (43.0) -
self を other で割った商 q と余り r を、 [q, r] という 2 要素の配列にし て返します。
...り r を、 [q, r] という 2 要素の配列にし
て返します。
商は負の無限大負方向に丸められます。
@param n self を割る数を指定します。
//emlist[][ruby]{
require 'bigdecimal'
a = BigDecimal("42")
b = BigDecimal("9")
a.divmod(b) # => [0.4e1, 0.6e1]
//}... -
BigDecimal
# eql?(other) -> bool (43.0) -
self が other と等しい場合に true を、そうでない場合に false を返します。
...self が other と等しい場合に true を、そうでない場合に false を返します。
それぞれの値は BigDecimal#coerce で変換して比較される場合があります。
//emlist[][ruby]{
require 'bigdecimal'
BigDecimal('1.0') == 1.0 # => true
//}... -
BigDecimal
# inspect -> String (43.0) -
BigDecimal オブジェクトを表す文字列を返します。
...
BigDecimal オブジェクトを表す文字列を返します。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1234.5678").inspect
# => "0.12345678e4"
//}... -
BigDecimal
# modulo(n) -> BigDecimal (43.0) -
self を n で割った余りを返します。
...指定します。
//emlist[][ruby]{
require 'bigdecimal'
x = BigDecimal((2**100).to_s)
( x % 3).to_i # => 1
(-x % 3).to_i # => 2
( x % -3).to_i # => -2
(-x % -3).to_i # => -1
//}
戻り値は n と同じ符号になります。これは BigDecimal#remainder とは
異なる点に注意してく... -
BigDecimal
# nonzero? -> self | nil (43.0) -
self が 0 以外のときに self を返します。0 のときに nil を返します。
...self が 0 以外のときに self を返します。0 のときに nil を返します。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("0").nonzero? # => nil
BigDecimal("1").nonzero? # => 0.1e1
//}... -
BigDecimal
# remainder(n) -> BigDecimal (43.0) -
self を n で割った余りを返します。
...//emlist[][ruby]{
require 'bigdecimal'
x = BigDecimal((2**100).to_s)
x.remainder(3).to_i # => 1
(-x).remainder(3).to_i # => -1
x.remainder(-3).to_i # => 1
(-x).remainder(-3).to_i # => -1
//}
戻り値は self と同じ符号になります。これは BigDecimal#% とは異な
る点に注... -
BigDecimal
# sign -> -3 | -2 | -1 | 0 | 1 | 2 | 3 (43.0) -
自身の符号等の性質に応じて、Integer を返します。
...であれば、 0。 BigDecimal::SIGN_NaN と同じです。
+0 であれば、 1。 BigDecimal::SIGN_POSITIVE_ZERO と同じです。
-0 であれば、-1。 BigDecimal::SIGN_NEGATIVE_ZERO と同じです。
有限の正の値 であれば、 2。 BigDecimal::SIGN_POSITIVE_FIN......負の値 であれば、-2。 BigDecimal::SIGN_NEGATIVE_FINITE と同じです。
+Infinity であれば、 3。 BigDecimal::SIGN_POSITIVE_INFINITE と同じです。
-Infinity であれば、-3。 BigDecimal::SIGN_NEGATIVE_INFINITE と同じです。
BigDecimal は、 0 であっても、+......lib:bigdecimal#internal_structure」を参照)
//emlist[][ruby]{
require "bigdecimal"
p BigDecimal("NaN").sign # => 0
p BigDecimal("0").sign # => 1
p BigDecimal("100").sign # => 2
p BigDecimal("Infinity").sign # => 3
p BigDecimal("-0").sign # => -1
p BigDecimal("-5"... -
BigDecimal
# truncate -> Integer (43.0) -
小数点以下の数を切り捨てて整数にします。
...ます)。
n が負のときは小数点以上 n 桁目を操作します
(小数点位置から左に少なくとも n 個の 0 が並びます)。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").truncate(4).to_f # => 1.2345
BigDecimal("15.23456").truncate(-1).to_f # => 10.0
//}... -
BigDecimal
# truncate(n) -> BigDecimal (43.0) -
小数点以下の数を切り捨てて整数にします。
...ます)。
n が負のときは小数点以上 n 桁目を操作します
(小数点位置から左に少なくとも n 個の 0 が並びます)。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").truncate(4).to_f # => 1.2345
BigDecimal("15.23456").truncate(-1).to_f # => 10.0
//}... -
BigDecimal
# zero? -> bool (43.0) -
self が 0 のときに true を返します。それ以外のときに false を返します。
...self が 0 のときに true を返します。それ以外のときに false を返します。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("0").zero? # => true
BigDecimal("1").zero? # => false
//}... -
BigDecimal
. limit(n = nil) -> Integer (43.0) -
生成されるBigDecimalオブジェクトの最大桁数をn桁に制限します。 n を指定しない、または n が nil の場合は、現状の最大桁数が返ります。
...生成されるBigDecimalオブジェクトの最大桁数をn桁に制限します。
n を指定しない、または n が nil の場合は、現状の最大桁数が返ります。
戻り値は設定する前の値です。設定値のデフォルト値は0で、桁数無制限を表してい......ます。この場合 BigDecimal.mode で指定された丸め処理が
実行されます。ただし、インスタンスメソッド (BigDecimal#truncate /
BigDecimal#round / BigDecimal#ceil / BigDecimal#floor /
BigDecimal#add/ BigDecimal#sub / BigDecimal#mult /
BigDecimal#div) の桁数制限は......limit より優先されます。
//emlist[][ruby]{
require 'bigdecimal'
n = 0 # デフォルト値
mf = BigDecimal::limit(n)
//}
@param n 新しい最大桁数を正の整数で指定します。
@raise ArgumentError n に負の数を指定した場合に発生します。... -
BigMath
. # exp(x , prec) -> BigDecimal (43.0) -
x の指数関数を prec で指定した精度で計算します。
...。
@param x 計算対象の数値を Integer、BigDecimal、
Float、Rationalオブジェクトのいずれかで指定します。
@param prec 計算結果の精度を指定します。
@raise ArgumentError x に Integer、BigDecimal、
Float、Rational以外のオ......ブジェクトを指
定した場合に発生します。
@raise ArgumentError prec に 0 以下の数値が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::exp(BigDecimal('1'), 10) #=> 0.2718281828e1
//}... -
BigMath
. # log(x , prec) -> BigDecimal (43.0) -
x の自然対数を prec で指定した精度で計算します。
...返します。NaN を指定した場合には NaN
を返します。
@param x 計算対象の数値を Integer、Float、
Rational、BigDecimal オブジェクトのいずれかで指定
します。
@param prec 計算結果の精度を指定します。
@raise Math::DomainErro......が指定された場合に発生します。
@raise ArgumentError prec に 0 以下の数値が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::log(BigDecimal('2'), 10) #=> 0.693147180559945309417232112588603776354688e0
//}... -
Kernel
. # BigDecimal(s , exception: true) -> BigDecimal | nil (43.0) -
引数で指定した値を表す BigDecimal オブジェクトを生成します。
...引数で指定した値を表す BigDecimal オブジェクトを生成します。
@param s 数値を表現する初期値を文字列、Integer、
Float、Rational、BigDecimal オブジェクトのい
ずれかで指定します。
文字列中のスペースは無......うな割り算を実行するとき等に意味を持ちます。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1") / BigDecimal("3") # => 0.333333333333333333e0
BigDecimal("1",10) / BigDecimal("3",10) # => 0.333333333333333333e0
//}
ただし、個々の演算における最大... -
Kernel
. # BigDecimal(s , n , exception: true) -> BigDecimal | nil (43.0) -
引数で指定した値を表す BigDecimal オブジェクトを生成します。
...引数で指定した値を表す BigDecimal オブジェクトを生成します。
@param s 数値を表現する初期値を文字列、Integer、
Float、Rational、BigDecimal オブジェクトのい
ずれかで指定します。
文字列中のスペースは無......うな割り算を実行するとき等に意味を持ちます。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1") / BigDecimal("3") # => 0.333333333333333333e0
BigDecimal("1",10) / BigDecimal("3",10) # => 0.333333333333333333e0
//}
ただし、個々の演算における最大... -
BigMath
. # E(prec) -> BigDecimal (40.0) -
自然対数の底 e を prec で指定した精度で計算します。
...で計算します。
@param prec 計算結果の精度。
@raise ArgumentError prec に 0 以下が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::E(2) #=> 0.27e1
puts BigMath::E(4) #=> 0.2718e1
puts BigMath::E(10) #=> 0.2718281828e1
//}... -
BigMath
. # PI(prec) -> BigDecimal (40.0) -
円周率を prec で指定した精度で計算します。
...m prec 計算結果の精度。
@raise ArgumentError prec に 0 以下が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::PI(2) #=> 0.31415926535897932384671233672993238432e1
puts BigMath::PI(5) #=> 0.31415926535897932384627534923029509162e1
p... -
BigMath
. # atan(x , prec) -> BigDecimal (40.0) -
x の逆正接関数を prec で指定した精度で計算します。単位はラジアンです。 x に無限大や NaN を指定した場合には NaN を返します。
... BigDecimal オブジェクト。単位はラジアン。
@param prec 計算結果の精度。
@raise ArgumentError x の絶対値が1以上の場合に発生します。
@raise ArgumentError prec に 0 以下が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/mat......h"
puts BigMath::atan(BigDecimal('0.5'), 10) #=> 0.463647609000806116214256237466868871528608e0
//}
=== 注意
x の絶対値を 0.9999 のような 1 に近すぎる値にすると計算結果が収束しない
可能性があります。... -
BigMath
. # cos(x , prec) -> BigDecimal (40.0) -
x の余弦関数を prec で指定した精度で計算します。単位はラジアンです。x に無限大や NaN を指定した場合には NaN を返します。
...param x 計算対象の BigDecimal オブジェクト。単位はラジアン。
@param prec 計算結果の精度。
@raise ArgumentError prec に 0 以下が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::cos(BigDecimal('0.5'), 10) #=> 0.877... -
BigMath
. # sin(x , prec) -> BigDecimal (40.0) -
x の正弦関数を prec で指定した精度で計算します。単位はラジアンです。x に無限大や NaN を指定した場合には NaN を返します。
...param x 計算対象の BigDecimal オブジェクト。単位はラジアン。
@param prec 計算結果の精度。
@raise ArgumentError prec に 0 以下が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::sin(BigDecimal('0.5'), 10) #=> 0.479... -
BigMath
. # sqrt(x , prec) -> BigDecimal (40.0) -
x の平方根を prec で指定した精度で計算します。
...Error x に 0 以下、もしくは NaN が指定された場合に発生します。
@raise ArgumentError prec に 0 未満が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::sqrt(BigDecimal('2'), 10) #=> 0.1414213562373095048666666667e1
//}... -
Float
# to _ d -> BigDecimal (40.0) -
自身を BigDecimal に変換します。
...自身を BigDecimal に変換します。
@param prec 計算結果の精度。省略した場合は Float::DIG + 1 です。
@return BigDecimal に変換したオブジェクト
//emlist[][ruby]{
require 'bigdecimal'
require 'bigdecimal/util'
p 1.0.to_d # => 0.1e1
p (1.0 / 0).to_d # => I... -
Float
# to _ d(prec) -> BigDecimal (40.0) -
自身を BigDecimal に変換します。
...自身を BigDecimal に変換します。
@param prec 計算結果の精度。省略した場合は Float::DIG + 1 です。
@return BigDecimal に変換したオブジェクト
//emlist[][ruby]{
require 'bigdecimal'
require 'bigdecimal/util'
p 1.0.to_d # => 0.1e1
p (1.0 / 0).to_d # => I... -
LUSolve
. # lusolve(a , b , ps , zero = 0 . 0) -> [BigDecimal] (40.0) -
LU 分解を用いて、連立1次方程式 Ax = b の解 x を求めて返します。
...返します。
@param a 行列を BigDecimal の配列で指定します。
各要素を Row-major order で並べて 1 次元の配列にし、
LUSolve.#ludecomp で変換したものを指定します。
@param b ベクトルを BigDecimal の配列で指定します。
@para......ludecomp の返り値を指定します。
@param zero 0.0 を表す値を指定します。
//emlist[][ruby]{
require 'bigdecimal'
require 'bigdecimal/util'
require 'bigdecimal/ludcmp'
include LUSolve
a = [['1.0', '2.0'], ['3.0', '1.0']].flatten.map(&:to_d)
# x = ['1.0', -1.0']
b = ['-1.0', '2.... -
Rational
# to _ d(nFig) -> BigDecimal (40.0) -
自身を BigDecimal に変換します。
...自身を BigDecimal に変換します。
nFig 桁まで計算を行います。
@param nFig 計算を行う桁数
@return BigDecimal に変換したオブジェクト
@raise ArgumentError nFig に 0 以下を指定した場合に発生します。
//emlist[][ruby]{
require "bigdecimal"
requir...