種類
- インスタンスメソッド (44)
- モジュール関数 (14)
- 特異メソッド (4)
クラス
- BigDecimal (43)
- Float (2)
- Integer (1)
- Rational (1)
- String (1)
キーワード
- % (1)
- * (1)
- ** (1)
- + (1)
- +@ (1)
- - (1)
- -@ (1)
-
/ (1) - BigDecimal (2)
- E (1)
- PI (1)
-
_ dump (1) -
_ load (1) - add (1)
- atan (1)
- ceil (2)
- coerce (1)
- cos (1)
- div (2)
- divmod (1)
- exp (1)
- floor (2)
- jacobian (1)
- limit (1)
- log (1)
- ludecomp (1)
- lusolve (1)
- mode (2)
- modulo (1)
- mult (1)
- nlsolve (1)
- power (2)
- quo (1)
- remainder (1)
- round (3)
- sin (1)
- split (1)
- sqrt (2)
- sub (1)
-
to
_ d (6) -
to
_ digits (1) -
to
_ f (1) -
to
_ i (1) -
to
_ int (1) -
to
_ s (2) - truncate (2)
検索結果
先頭5件
-
BigDecimal
# +@ -> self (18307.0) -
self を返します。
self を返します。 -
BigDecimal
# -@ -> BigDecimal (18307.0) -
self の符号を反転させたものを返します。
self の符号を反転させたものを返します。 -
LUSolve
. # ludecomp(a , n , zero = 0 , one = 1) -> [Integer] (112.0) -
n 次正方行列を表す配列 a を破壊的に変更し、返り値と併せて元の行列の LU 分解を提供します。
...と併せて元の行列の LU 分解を提供します。
LUSolve.#lusolve の引数を構築するために使います。
@param a 行列を BigDecimal の配列で指定します。(各要素を
Row-major order で 1 次元の配列にしたオブジェクトを指定し
ま... -
Jacobian
. # jacobian(f , fx , x) -> [Numeric] (94.0) -
ヤコビ行列を計算します。
...ヤコビ行列を計算します。
@param f ヤコビ行列を求めたい関数を表すオブジェクトを指定します。詳細は
bigdecimal/jacobian をご覧ください。
@param fx f.values(x) の結果を表すベクトルを数値の配列で指定します。
@param x... -
BigDecimal
# add(other , n) -> BigDecimal (79.0) -
和を計算します。
...の精度が n より大きい
ときは BigDecimal.mode で指定された方法で丸められます。
@param other self に足す数を指定します。
@param n 有効桁数を整数で指定します。0 を指定した場合は
BigDecimal#+ と同じ値を返します。
@raise A......rgumentError n に負の数を指定した場合に発生します。
@see BigDecimal#+... -
BigDecimal
# div(other , n) -> BigDecimal (79.0) -
商を計算します。
...度が n より大きい
ときは BigDecimal.mode で指定された方法で丸められます。
@param other self を割る数を指定します。
@param n 有効桁数を整数で指定します。省略するか 0 を指定した場合は
BigDecimal#/ と同じ値を返します。......@raise ArgumentError n に負の数を指定した場合に発生します。
@see BigDecimal#/... -
BigDecimal
# mult(other , n) -> BigDecimal (79.0) -
積を計算します。
...の精度が n より大きい
ときは BigDecimal.mode で指定された方法で丸められます。
@param other self に掛ける数を指定します。
@param n 有効桁数を整数で指定します。0 を指定した場合は
BigDecimal#* と同じ値を返します。
@rais......e ArgumentError n に負の数を指定した場合に発生します。
@see BigDecimal#*... -
BigDecimal
# sub(other , n) -> BigDecimal (79.0) -
差を計算します。
...の精度が n より大きい
ときは BigDecimal.mode で指定された方法で丸められます。
@param other self から引く数を指定します。
@param n 有効桁数を整数で指定します。0 を指定した場合は
BigDecimal#- と同じ値を返します。
@rais......e ArgumentError n に負の数を指定した場合に発生します。
@see BigDecimal#-... -
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... -
BigMath
. # exp(x , prec) -> BigDecimal (79.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 (79.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) -> BigDecimal (79.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) -> BigDecimal (79.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
. # atan(x , prec) -> BigDecimal (76.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
. # sqrt(x , prec) -> BigDecimal (76.0) -
x の平方根を prec で指定した精度で計算します。
...Error x に 0 以下、もしくは NaN が指定された場合に発生します。
@raise ArgumentError prec に 0 未満が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::sqrt(BigDecimal('2'), 10) #=> 0.1414213562373095048666666667e1
//}... -
LUSolve
. # lusolve(a , b , ps , zero = 0 . 0) -> [BigDecimal] (76.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.... -
Newton
. # nlsolve(f , x) -> Integer (76.0) -
ニュートン法を用いて非線形方程式 f(x) = 0 の解 x を求めます。
...用いて非線形方程式 f(x) = 0 の解 x を求めます。
@param f 関数を表すオブジェクトを指定します。詳細は
bigdecimal/newton をご覧ください。
@param x 探索を開始する点を数値の配列で指定します。解が複数ある場合、初... -
BigDecimal
# **(n) -> BigDecimal (61.0) -
self の n 乗を計算します。
self の n 乗を計算します。
戻り値の有効桁数は self の有効桁数の n 倍以上になります。
@param n selfを other 乗する数を指定します。
@param prec 有効桁数を整数で指定します。
@see Integer#pow -
BigDecimal
# power(n) -> BigDecimal (61.0) -
self の n 乗を計算します。
self の n 乗を計算します。
戻り値の有効桁数は self の有効桁数の n 倍以上になります。
@param n selfを other 乗する数を指定します。
@param prec 有効桁数を整数で指定します。
@see Integer#pow -
BigDecimal
# power(n , prec) -> BigDecimal (61.0) -
self の n 乗を計算します。
self の n 乗を計算します。
戻り値の有効桁数は self の有効桁数の n 倍以上になります。
@param n selfを other 乗する数を指定します。
@param prec 有効桁数を整数で指定します。
@see Integer#pow -
BigDecimal
# round -> Integer (61.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 (61.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 (61.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
. _ load(str) -> BigDecimal (61.0) -
引数で指定された文字列を元に BigDecimal オブジェクトを復元します。 Marshal.#load から呼び出されます。
...文字列を元に BigDecimal オブジェクトを復元します。
Marshal.#load から呼び出されます。
@param str 復元する値を表す文字列を指定します。
@raise TypeError 引数に不正な文字が含まれる場合に発生します。
@see BigDecimal#_dump, Marshal.#... -
BigMath
. # cos(x , prec) -> BigDecimal (58.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 (58.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... -
Float
# to _ d -> BigDecimal (58.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 (58.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... -
Rational
# to _ d(nFig) -> BigDecimal (58.0) -
自身を BigDecimal に変換します。
...自身を BigDecimal に変換します。
nFig 桁まで計算を行います。
@param nFig 計算を行う桁数
@return BigDecimal に変換したオブジェクト
@raise ArgumentError nFig に 0 以下を指定した場合に発生します。
//emlist[][ruby]{
require "bigdecimal"
requir... -
BigDecimal
# sqrt(n) -> BigDecimal (43.0) -
self の有効桁 n 桁の平方根 (n の平方根ではありません) をニュートン法で 計算します。
self の有効桁 n 桁の平方根 (n の平方根ではありません) をニュートン法で
計算します。
@param n 有効桁数を整数で指定します。
@raise ArgumentError n に負の数を指定した場合に発生します。 -
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
. # 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... -
BigDecimal
# %(n) -> BigDecimal (25.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) -> BigDecimal (25.0) -
積を計算します。
...積を計算します。
@param other self に掛ける数を指定します。
計算結果の精度についてはlib:bigdecimal#precisionを参照してください。... -
BigDecimal
# +(other) -> BigDecimal (25.0) -
和を計算します。
...和を計算します。
@param other self に足す数を指定します。
計算結果の精度についてはlib:bigdecimal#precisionを参照してください。... -
BigDecimal
# -(other) -> BigDecimal (25.0) -
差を計算します。
...差を計算します。
@param other self から引く数を指定します。
計算結果の精度についてはlib:bigdecimal#precisionを参照してください。... -
BigDecimal
# / (other) -> BigDecimal (25.0) -
商を計算します。
...商を計算します。
@param other self を割る数を指定します。
詳細は Numeric#quo を参照して下さい。
計算結果の精度についてはlib:bigdecimal#precisionを参照してください。... -
BigDecimal
# _ dump -> String (25.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
# ceil -> Integer (25.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 (25.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
# coerce(other) -> Array (25.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
# div(other) -> BigDecimal (25.0) -
商を計算します。
...商を計算します。
@param other self を割る数を指定します。
詳細は Numeric#quo を参照して下さい。
計算結果の精度についてはlib:bigdecimal#precisionを参照してください。... -
BigDecimal
# divmod(n) -> [BigDecimal , BigDecimal] (25.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
# floor -> Integer (25.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 (25.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
# modulo(n) -> BigDecimal (25.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
# quo(other) -> BigDecimal (25.0) -
商を計算します。
...商を計算します。
@param other self を割る数を指定します。
詳細は Numeric#quo を参照して下さい。
計算結果の精度についてはlib:bigdecimal#precisionを参照してください。... -
BigDecimal
# remainder(n) -> BigDecimal (25.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
# split -> [Integer , String , Integer , Integer] (25.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
# to _ f -> Float (25.0) -
self の近似値を表す Float オブジェクトに変換します。
...self の近似値を表す Float オブジェクトに変換します。
仮数部や指数部の情報が必要な場合は、BigDecimal#split メソッドを利
用してください。
@see BigDecimal#split... -
BigDecimal
# to _ i -> Integer (25.0) -
self の小数点以下を切り捨てて整数に変換します。
self の小数点以下を切り捨てて整数に変換します。
@raise FloatDomainError self が無限大や NaN であった場合に発生します。 -
BigDecimal
# to _ int -> Integer (25.0) -
self の小数点以下を切り捨てて整数に変換します。
self の小数点以下を切り捨てて整数に変換します。
@raise FloatDomainError self が無限大や NaN であった場合に発生します。 -
BigDecimal
# to _ s -> String (25.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 (25.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
# truncate -> Integer (25.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 (25.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
# to _ d -> BigDecimal (22.0) -
自身を返します。
...自身を返します。
@return BigDecimal オブジェクト... -
BigDecimal
# to _ digits -> String (22.0) -
自身を "1234.567" のような十進数の形式にフォーマットした文字列に変換し ます。
...自身を "1234.567" のような十進数の形式にフォーマットした文字列に変換し
ます。
@return 十進数の形式にフォーマットした文字列
注意:
このメソッドは非推奨です。BigDecimal#to_s("F") を使用してください。... -
Integer
# to _ d -> BigDecimal (22.0) -
自身を BigDecimal に変換します。BigDecimal(self) と同じです。
...自身を BigDecimal に変換します。BigDecimal(self) と同じです。
@return BigDecimal に変換したオブジェクト... -
String
# to _ d -> BigDecimal (22.0) -
自身を BigDecimal に変換します。BigDecimal(self) と同じです。
...自身を BigDecimal に変換します。BigDecimal(self) と同じです。
@return BigDecimal に変換したオブジェクト...