種類
- インスタンスメソッド (110)
- モジュール関数 (44)
- 文書 (28)
- ライブラリ (22)
- 特異メソッド (11)
ライブラリ
- ビルトイン (33)
- bigdecimal (77)
-
bigdecimal
/ util (22) - matrix (33)
クラス
- BigDecimal (33)
- Float (22)
- Integer (33)
- Matrix (33)
キーワード
- ** (11)
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) - BigDecimal (22)
-
NEWS for Ruby 2
. 6 . 0 (6) - Ruby用語集 (11)
-
bigdecimal
/ util (11) - det (11)
- determinant (11)
-
double
_ fig (11) - exp (11)
- log (11)
- pow (22)
- rank (11)
- split (11)
-
to
_ d (22) -
to
_ f (11)
検索結果
先頭5件
-
bigdecimal (38598.0)
-
bigdecimal は浮動小数点数演算ライブラリです。 任意の精度で 10 進表現された浮動小数点数を扱えます。
...bigdecimal は浮動小数点数演算ライブラリです。
任意の精度で 10 進表現された浮動小数点数を扱えます。
//emlist[][ruby]{
require 'bigdecimal'
a = BigDecimal("0.123456789123456789")
b = BigDecimal("123456.78912345678", 40)
print a + b # => 0.123456912580245903456......に対し、BigDecimal では正確な値を得る事ができます。
//emlist[例1: 0.0001 を 10000 回足す場合。][ruby]{
sum = 0
for i in (1..10000)
sum = sum + 0.0001
end
print sum # => 0.9999999999999062
//}
//emlist[例2: 0.0001 を 10000 回足す場合。(BigDecimal)][ruby]{
requi......[][ruby]{
require "bigdecimal/math"
//}
とすることで、sin や cos といった関数が使用できるようになります。
使用方法など、詳細は bigdecimal/math を参照して下さい。 その他、Float との相互変換などの
メソッドが bigdecimal/util でサポー... -
Float
# to _ d -> BigDecimal (21142.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 (21142.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... -
BigDecimal
# to _ f -> Float (17129.0) -
self の近似値を表す Float オブジェクトに変換します。
...self の近似値を表す Float オブジェクトに変換します。
仮数部や指数部の情報が必要な場合は、BigDecimal#split メソッドを利
用してください。
@see BigDecimal#split... -
BigDecimal
# split -> [Integer , String , Integer , Integer] (17040.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
. double _ fig -> Integer (17028.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;... -
Kernel
. # BigDecimal(s) -> BigDecimal (14280.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
//}
ただし、個々の演算における最大......される可能性があります。
@raise ArgumentError s に Float オブジェクトを指定し、n に
Float::DIG + 2 以上の値を指定した場合に発生します。
s に Float、Rational オブジェクトを指
定し... -
Kernel
. # BigDecimal(s , exception: true) -> BigDecimal | nil (14280.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
//}
ただし、個々の演算における最大......る代わりに nil を返します。
@raise ArgumentError s に Float オブジェクトを指定し、n に
Float::DIG + 2 以上の値を指定した場合に発生します。
s に Float、Rational オブジェクトを指
定し... -
Kernel
. # BigDecimal(s , n) -> BigDecimal (14280.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
//}
ただし、個々の演算における最大......される可能性があります。
@raise ArgumentError s に Float オブジェクトを指定し、n に
Float::DIG + 2 以上の値を指定した場合に発生します。
s に Float、Rational オブジェクトを指
定し... -
Kernel
. # BigDecimal(s , n , exception: true) -> BigDecimal | nil (14280.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
//}
ただし、個々の演算における最大......る代わりに nil を返します。
@raise ArgumentError s に Float オブジェクトを指定し、n に
Float::DIG + 2 以上の値を指定した場合に発生します。
s に Float、Rational オブジェクトを指
定し... -
BigMath
. # exp(x , prec) -> BigDecimal (8137.0) -
x の指数関数を prec で指定した精度で計算します。
...計算対象の数値を 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 (8125.0) -
x の自然対数を prec で指定した精度で計算します。
...は無限大を返します。NaN を指定した場合には NaN
を返します。
@param x 計算対象の数値を Integer、Float、
Rational、BigDecimal オブジェクトのいずれかで指定
します。
@param prec 計算結果の精度を指定します。
@raise M......が指定された場合に発生します。
@raise ArgumentError prec に 0 以下の数値が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::log(BigDecimal('2'), 10) #=> 0.693147180559945309417232112588603776354688e0
//}...