種類
- インスタンスメソッド (77)
- モジュール関数 (66)
- 定数 (44)
- 特異メソッド (22)
- ライブラリ (11)
ライブラリ
- bigdecimal (154)
-
bigdecimal
/ math (44) - matrix (11)
クラス
- BigDecimal (132)
- Matrix (11)
モジュール
- BigMath (66)
検索結果
先頭5件
-
bigdecimal (38682.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......y") # => Infinity
BigDecimal("-Infinity") # => -Infinity
//}
==== 非数(Not a Number)
0 / 0 のような未定義の計算を行った場合、非数(Not a Number)を表す値を返
します。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("0.0") / BigDecimal("0.0") # => NaN
//}
NaN を表... -
BigDecimal
:: NAN -> BigDecimal (35334.0) -
NaN を表す BigDecimal オブジェクトを返します。
...
NaN を表す BigDecimal オブジェクトを返します。... -
BigDecimal
:: EXCEPTION _ NaN -> Integer (23239.0) -
BigDecimal の計算結果が NaN になった場合に例外を発生させるかどう かを設定、確認する際の値を返します。
...
BigDecimal の計算結果が NaN になった場合に例外を発生させるかどう
かを設定、確認する際の値を返します。
BigDecimal.mode の第 1 引数に指定します。... -
BigDecimal
:: SIGN _ NaN -> Integer (23233.0) -
NaN に対応する BigDecimal#sign の値を返します。
...
NaN に対応する BigDecimal#sign の値を返します。... -
BigDecimal
# nan? -> bool (23217.0) -
self が NaN のときに true を返します。それ以外のときに false を返します。
...self が NaN のときに true を返します。それ以外のときに false を返します。... -
BigDecimal
. mode(s) -> Integer | nil (17440.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 の......(NaN)やゼロによる除算になったときの処理を定義することができます。
//emlist[][ruby]{
require 'bigdecimal'
flag = false # デフォルト値
f = BigDecimal::mode(BigDecimal::EXCEPTION_NaN,flag)
f = BigDecimal::mode(BigDecimal::EXCEPTION_INFINITY,flag)
f = BigDecimal::mod... -
BigDecimal
. mode(s , v) -> Integer | nil (17440.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 の......(NaN)やゼロによる除算になったときの処理を定義することができます。
//emlist[][ruby]{
require 'bigdecimal'
flag = false # デフォルト値
f = BigDecimal::mode(BigDecimal::EXCEPTION_NaN,flag)
f = BigDecimal::mode(BigDecimal::EXCEPTION_INFINITY,flag)
f = BigDecimal::mod... -
BigDecimal
# sign -> -3 | -2 | -1 | 0 | 1 | 2 | 3 (17238.0) -
自身の符号等の性質に応じて、Integer を返します。
...れば負の整数を返し、NaN であれば 0 を返します。
NaN であれば、 0。 BigDecimal::SIGN_NaN と同じです。
+0 であれば、 1。 BigDecimal::SIGN_POSITIVE_ZERO と同じです。
-0 であれば、-1。 BigDecimal::SIGN_NEGATIVE_ZERO と同......ば、 2。 BigDecimal::SIGN_POSITIVE_FINITE と同じです。
有限の負の値 であれば、-2。 BigDecimal::SIGN_NEGATIVE_FINITE と同じです。
+Infinity であれば、 3。 BigDecimal::SIGN_POSITIVE_INFINITE と同じです。
-Infinity であれば、-3。 BigDecimal::SIGN_NEG......です。
BigDecimal は、 0 であっても、+ か - の符号を持つことに注意して下さい。
(「lib:bigdecimal#internal_structure」を参照)
//emlist[][ruby]{
require "bigdecimal"
p BigDecimal("NaN").sign # => 0
p BigDecimal("0").sign # => 1
p BigDecimal("100").s... -
BigDecimal
:: EXCEPTION _ ALL -> Integer (17158.0) -
BigDecimal の計算において例外を発生させるかどうかを設定、確認する 際の値を返します。
...
BigDecimal の計算において例外を発生させるかどうかを設定、確認する
際の値を返します。
以下の例外全てが対象です。
* BigDecimal::EXCEPTION_INFINITY
* BigDecimal::EXCEPTION_NaN
* BigDecimal::EXCEPTION_OVERFLOW
* BigDecimal::EXCEPTION_UNDERFLOW
* B......igDecimal::EXCEPTION_ZERODIVIDE
BigDecimal.mode の第 1 引数に指定します。... -
BigDecimal
# split -> [Integer , String , Integer , Integer] (17150.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...