ライブラリ
- ビルトイン (49)
- bigdecimal (7)
-
bigdecimal
/ util (2) - cmath (2)
- date (1)
- json (7)
- openssl (2)
クラス
- Array (1)
- BigDecimal (7)
- Complex (2)
- Date (1)
- Enumerator (2)
-
Enumerator
:: Lazy (7) - Float (9)
- Integer (2)
-
JSON
:: State (1) - Numeric (6)
-
OpenSSL
:: PKey :: EC :: Point (2) - Random (6)
- Range (2)
- Rational (1)
- String (2)
キーワード
-
/ (1) -
EXCEPTION
_ ALL (1) -
EXCEPTION
_ INFINITY (1) - Float (1)
- INFINITY (2)
- JULIAN (1)
- MinusInfinity (1)
-
RLIM
_ INFINITY (1) -
_ dump (1) -
allow
_ nan? (1) - bigdecimal (1)
- bsearch (1)
-
enum
_ for (2) - format (1)
- generate (1)
- getrlimit (1)
- grep (1)
-
grep
_ v (1) - infinite? (1)
- infinity? (1)
- inspect (2)
- lazy (2)
- lgamma (1)
- load (1)
- log (4)
- mode (2)
- new (1)
-
next
_ float (1) - pack (1)
- pack テンプレート文字列 (1)
- pow (1)
-
prev
_ float (1) - rand (6)
- restore (1)
-
set
_ to _ infinity! (1) - setrlimit (2)
- sign (1)
- size (2)
- sprintf (1)
- step (6)
-
to
_ d (2) -
to
_ enum (2) -
to
_ f (3) -
to
_ s (2) - unpack (1)
- unparse (1)
検索結果
先頭5件
-
JSON
:: Infinity -> Float (54604.0) -
正の無限大を表します。
正の無限大を表します。
@see Float -
Process
:: RLIM _ INFINITY -> Integer (36604.0) -
リソースに制限がないことを意味する定数です。
リソースに制限がないことを意味する定数です。
Process.#getrlimit、Process.#setrlimit で使われます。 -
Float
# next _ float -> Float (27637.0) -
浮動小数点数で表現可能な self の次の値を返します。
浮動小数点数で表現可能な self の次の値を返します。
Float::MAX.next_float、Float::INFINITY.next_float は
Float::INFINITY を返します。Float::NAN.next_float は
Float::NAN を返します。
//emlist[例][ruby]{
p 0.01.next_float # => 0.010000000000000002
p 1.0.next_float # => 1.0000000000000002
p 100.0.next_float # => 100.00000000000001
p ... -
Float
# prev _ float -> Float (27637.0) -
浮動小数点数で表現可能な self の前の値を返します。
浮動小数点数で表現可能な self の前の値を返します。
(-Float::MAX).prev_float と (-Float::INFINITY).prev_float
は -Float::INFINITY を返します。Float::NAN.prev_float は
Float::NAN を返します。
//emlist[例][ruby]{
p 0.01.prev_float # => 0.009999999999999998
p 1.0.prev_float # => 0.9999999999999999
p 100.0.prev_float # => 99.9999999999... -
Float
:: INFINITY -> Float (27622.0) -
浮動小数点数における正の無限大です。
浮動小数点数における正の無限大です。
負の無限大は -Float::INFINITY です。
@see Float#finite?, Float#infinite? -
OpenSSL
:: PKey :: EC :: Point # infinity? -> bool (27622.0) -
自身が無限遠点であるならば true を返します。
自身が無限遠点であるならば true を返します。
@raise OpenSSL::PKey::EC::Point::Error エラーが生じた場合に発生します
@see OpenSSL::PKey::EC::Point#set_to_infinity! -
OpenSSL
:: PKey :: EC :: Point # set _ to _ infinity! -> self (27622.0) -
自身を無限遠点に設定します。
自身を無限遠点に設定します。
@raise OpenSSL::PKey::EC::Point::Error エラーが生じた場合に発生します
@see OpenSSL::PKey::EC::Point#infinity! -
BigDecimal
:: INFINITY -> BigDecimal (27604.0) -
正の無限大を表す BigDecimal オブジェクトを返します。
正の無限大を表す BigDecimal オブジェクトを返します。 -
Enumerator
:: Lazy # lazy -> self (27337.0) -
self を返します。
self を返します。
//emlist[例][ruby]{
lazy = (100..Float::INFINITY).lazy
p lazy.lazy # => #<Enumerator::Lazy: 100..Infinity>
p lazy == lazy.lazy # => true
//} -
BigDecimal
:: EXCEPTION _ INFINITY -> Integer (27304.0) -
BigDecimal の計算結果が無限大になった場合に例外を発生させるかどう かを設定、確認する際の値を返します。
BigDecimal の計算結果が無限大になった場合に例外を発生させるかどう
かを設定、確認する際の値を返します。
BigDecimal.mode の第 1 引数に指定します。 -
Process
. # setrlimit(resource , cur _ limit , max _ limit) -> nil (18919.0) -
カレントプロセスでのリソースの制限値を設定します。
カレントプロセスでのリソースの制限値を設定します。
@param resource リソースの種類を示す定数を指定します。指定できる定数はシステムに依存します。
@param limit resource によって意味が決まる制限値を表す整数もしくは定数を指定します。
soft limit と hard limit 両方にこの値が使われます。
@param cur_limit 現在の制限値(soft limit)を表す整数もしくは定数を指定します。
@param max_limit soft limit として設定可能な最大値(hard limit)を表す整... -
CMath
. # log(z) -> Float | Complex (18637.0) -
z の対数を返します。
z の対数を返します。
@param z 真数を指定します。
@param b 底を指定します。省略した場合は自然対数を計算します。
@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。
//emlist[例][ruby]{
require "cmath"
CMath.log(Complex(0, 0)) # => -Infinity+0.0i
CMath.log(0) # => -Infinity
//} -
CMath
. # log(z , b) -> Float | Complex (18637.0) -
z の対数を返します。
z の対数を返します。
@param z 真数を指定します。
@param b 底を指定します。省略した場合は自然対数を計算します。
@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。
//emlist[例][ruby]{
require "cmath"
CMath.log(Complex(0, 0)) # => -Infinity+0.0i
CMath.log(0) # => -Infinity
//} -
Enumerable
# lazy -> Enumerator :: Lazy (18619.0) -
自身を lazy な Enumerator に変換したものを返します。
自身を lazy な Enumerator に変換したものを返します。
この Enumerator は、以下のメソッドが遅延評価を行う (つまり、配列ではな
くEnumeratorを返す) ように再定義されています。
* map/collect
* flat_map/collect_concat
* select/find_all
* reject
* grep
* take, take_while
* drop, drop_while
* zip (※一貫性のため、ブロックを渡さないケースのみlazy)
* cycle (※一貫性のため、ブロックを渡さないケースのみl... -
Kernel
. # Float(arg) -> Float (18619.0) -
引数を浮動小数点数(Float)に変換した結果を返します。
引数を浮動小数点数(Float)に変換した結果を返します。
引数が数値の場合は素直に変換し、文字列の場合
は整数や浮動小数点数と見なせるもののみ変換します。
メソッド Float は文字列に対し String#to_f よりも厳密な変換を行います。
@param arg 変換対象のオブジェクトです。
@raise ArgumentError 整数や浮動小数点数と見なせない文字列を引数に指定した場合に発生します。
@raise TypeError nil またはメソッド to_f を持たないオブジェクトを引数に指定したか、
to_f が浮動小数点数を返さ... -
Math
. # log(x) -> Float (18619.0) -
x の対数(logarithm)を返します。
x の対数(logarithm)を返します。
引数 x, b の両方に 0 を指定した場合は Float::NAN を返します。
@param x 正の実数を指定します。
@param b 底を指定します。省略した場合は自然対数(natural logarithm)を計算します。
@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。
@raise RangeError 引数のどちらかに実数以外の数値を指定した場合に発生します。
@raise DomainError 引数のどちらかに負の数を指定した場合に発生します。
//emlist[例][ru... -
Math
. # log(x , b) -> Float (18619.0) -
x の対数(logarithm)を返します。
x の対数(logarithm)を返します。
引数 x, b の両方に 0 を指定した場合は Float::NAN を返します。
@param x 正の実数を指定します。
@param b 底を指定します。省略した場合は自然対数(natural logarithm)を計算します。
@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。
@raise RangeError 引数のどちらかに実数以外の数値を指定した場合に発生します。
@raise DomainError 引数のどちらかに負の数を指定した場合に発生します。
//emlist[例][ru... -
Process
. # setrlimit(resource , limit) -> nil (18619.0) -
カレントプロセスでのリソースの制限値を設定します。
カレントプロセスでのリソースの制限値を設定します。
@param resource リソースの種類を示す定数を指定します。指定できる定数はシステムに依存します。
@param limit resource によって意味が決まる制限値を表す整数もしくは定数を指定します。
soft limit と hard limit 両方にこの値が使われます。
@param cur_limit 現在の制限値(soft limit)を表す整数もしくは定数を指定します。
@param max_limit soft limit として設定可能な最大値(hard limit)を表す整... -
Date
:: JULIAN -> Date :: Infinity (18604.0) -
常にユリウス暦であることを示します。 改暦日は無限の未来にあると考えられます。
常にユリウス暦であることを示します。
改暦日は無限の未来にあると考えられます。 -
JSON
:: MinusInfinity -> Float (18601.0) -
負の無限大を表します。
負の無限大を表します。
@see Float -
JSON
:: State # allow _ nan? -> bool (18397.0) -
NaN, Infinity, -Infinity を生成できる場合、真を返します。 そうでない場合は偽を返します。
NaN, Infinity, -Infinity を生成できる場合、真を返します。
そうでない場合は偽を返します。
//emlist[例][ruby]{
require "json"
json_state = JSON::State.new({})
json_state.allow_nan? # => false
json_state = JSON::State.new(allow_nan: true)
json_state.allow_nan? # => true
//}
@see 4627 -
bigdecimal (18343.0)
-
bigdecimal は浮動小数点数演算ライブラリです。 任意の精度で 10 進表現された浮動小数点数を扱えます。
bigdecimal は浮動小数点数演算ライブラリです。
任意の精度で 10 進表現された浮動小数点数を扱えます。
//emlist[][ruby]{
require 'bigdecimal'
a = BigDecimal("0.123456789123456789")
b = BigDecimal("123456.78912345678", 40)
print a + b # => 0.123456912580245903456789e6
//}
一般的な 10 進数の計算でも有用です。2 進数の浮動小数点演算には微小な誤
差があるのに対し、BigDecimal では正確な値を得る事がで... -
Process
. # getrlimit(resource) -> [Integer] (18337.0) -
カレントプロセスでのリソースの制限値を、整数の配列として返します。 返り値は、現在の制限値 cur_limit と、制限値として設定可能な最大値 max_limit の 配列 [cur_limit, max_limit] です。
カレントプロセスでのリソースの制限値を、整数の配列として返します。
返り値は、現在の制限値 cur_limit と、制限値として設定可能な最大値 max_limit の
配列 [cur_limit, max_limit] です。
それぞれの limit が Process::RLIM_INFINITY と等しい場合、リソースに制限がないことを意味します。
@param resource リソースの種類を示す定数を指定します。指定できる定数はシステムに依存します。
@raise Errno::EXXX リソースの制限値の取得が失敗した場合に発生します。
@raise NotImplem... -
BigDecimal
:: EXCEPTION _ ALL -> Integer (18319.0) -
BigDecimal の計算において例外を発生させるかどうかを設定、確認する 際の値を返します。
BigDecimal の計算において例外を発生させるかどうかを設定、確認する
際の値を返します。
以下の例外全てが対象です。
* BigDecimal::EXCEPTION_INFINITY
* BigDecimal::EXCEPTION_NaN
* BigDecimal::EXCEPTION_OVERFLOW
* BigDecimal::EXCEPTION_UNDERFLOW
* BigDecimal::EXCEPTION_ZERODIVIDE
BigDecimal.mode の第 1 引数に指定します。 -
JSON
. # load(source , proc = nil , options = {}) -> object (18319.0) -
与えられた JSON 形式の文字列を Ruby オブジェクトとしてロードして返します。
与えられた JSON 形式の文字列を Ruby オブジェクトとしてロードして返します。
proc として手続きオブジェクトが与えられた場合は、読み込んだオブジェクトを
引数にその手続きを呼び出します。
require 'json'
str=<<JSON
[1,2,3]
JSON
JSON.load(str) # => [1,2,3]
JSON.load(str, proc{|v| p v }) # => [1,2,3]
# 以下が表示される
# 1
# 2
# 3
# [1,2,3]
str=<<JSON
{ "a"... -
Math
. # lgamma(x) -> [Float , Integer] (18319.0) -
log(|gamma(x)|) と、gamma(x) の符号を返します。
log(|gamma(x)|) と、gamma(x) の符号を返します。
符号は +1 もしくは -1 で返されます。
@param x 実数
@raise TypeError xに数値以外を指定した場合に発生します。
@raise Math::DomainError x に -∞ を渡した場合に発生します。
@raise RangeError xに実数以外の数値を指定した場合に発生します。
//emlist[例][ruby]{
Math.lgamma(0) # => [Infinity, 1]
//}
@see Math.#gamma -
pack テンプレート文字列 (9721.0)
-
pack テンプレート文字列
pack テンプレート文字列
以下にあげるものは、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「長さ」の代わりに`*'とすることで「残り全て」
を表すこともできます。
長さの意味はテンプレート文字により異なりますが大抵、
"iiii"
のように連続するテンプレート文字は
"i4"
と書き換えることができます。
テンプレート文字列中の空白類は無視されます。
また、`#' から改行あるいはテンプレート文字列の最後まではコメントとみな
され無視されます。
=== 整数のテンプレート... -
BigDecimal
. mode(s) -> Integer | nil (9481.0) -
BigDecimal の計算処理の制御方法を設定、確認します。
BigDecimal の計算処理の制御方法を設定、確認します。
第2引数を省略、または nil を指定すると現状の設定値を返します。
@param s 制御方法の設定、確認を行う項目を BigDecimal::EXCEPTION_*、
BigDecimal::ROUND_MODE のいずれかで指定します。
@param v 引数 s が BigDecimal::ROUND_MODE の場合は
BigDecimal::ROUND_MODE 以外の BigDecimal::_ROUND* のいず
れかを指定します。指定した丸め処理が有効... -
BigDecimal
. mode(s , v) -> Integer | nil (9481.0) -
BigDecimal の計算処理の制御方法を設定、確認します。
BigDecimal の計算処理の制御方法を設定、確認します。
第2引数を省略、または nil を指定すると現状の設定値を返します。
@param s 制御方法の設定、確認を行う項目を BigDecimal::EXCEPTION_*、
BigDecimal::ROUND_MODE のいずれかで指定します。
@param v 引数 s が BigDecimal::ROUND_MODE の場合は
BigDecimal::ROUND_MODE 以外の BigDecimal::_ROUND* のいず
れかを指定します。指定した丸め処理が有効... -
Enumerator
:: Lazy # grep(pattern) {|item| . . . } -> Enumerator :: Lazy (9355.0) -
Enumerable#grep と同じですが、配列ではなくEnumerator::Lazy を返します。
Enumerable#grep と同じですが、配列ではなくEnumerator::Lazy を返します。
//emlist[例][ruby]{
(100..Float::INFINITY).lazy.map(&:to_s).grep(/\A(\d)\1+\z/)
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator::Lazy: 100..Infinity>:map>:grep(/\A(\d)\1+\z/)>
(100..Float::INFINITY).lazy.map(&:to_s).grep(/\A(\d)\1+\z/).... -
Enumerator
:: Lazy # grep _ v(pattern) {|item| . . . } -> Enumerator :: Lazy (9355.0) -
Enumerable#grep_v と同じですが、配列ではなくEnumerator::Lazy を返します。
Enumerable#grep_v と同じですが、配列ではなくEnumerator::Lazy を返します。
//emlist[例][ruby]{
(100..Float::INFINITY).lazy.map(&:to_s).grep_v(/(\d).*\1/)
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator::Lazy: 100..Infinity>:map>:grep_v(/(\d).*\1/)>
(100..Float::INFINITY).lazy.map(&:to_s).grep_v(/(\d).*\1/).t... -
Float
# infinite? -> 1 | -1 | nil (9337.0) -
数値が +∞ のとき 1、-∞のとき -1 を返します。それ以外は nil を返 します。
数値が +∞ のとき 1、-∞のとき -1 を返します。それ以外は nil を返
します。
//emlist[例][ruby]{
inf = 1.0/0
p inf # => Infinity
p inf.infinite? # => 1
inf = -1.0/0
p inf # => -Infinity
p inf.infinite? # => -1
//} -
Rational
# to _ f -> Float (9337.0) -
自身の値を最も良く表現する Float に変換します。
自身の値を最も良く表現する Float に変換します。
絶対値が極端に小さい、または大きい場合にはゼロや無限大が返ることがあります。
@return Float を返します。
//emlist[例][ruby]{
Rational(2).to_f # => 2.0
Rational(9, 4).to_f # => 2.25
Rational(-3, 4).to_f # => -0.75
Rational(20, 3).to_f # => 6.666666666666667
Rational(1, 10**1000... -
Enumerator
:: Lazy # enum _ for(method = :each , *args) -> Enumerator :: Lazy (9319.0) -
Object#to_enum と同じですが、Enumerator::Lazy を返します。
Object#to_enum と同じですが、Enumerator::Lazy を返します。
to_enum は「ブロック付きで呼ぶとループを実行し、ブロックを省略した場合は
Enumerator を返す」ようなメソッドを定義するときによく使われます。
このときに lazy 性が正しく引き継がれるように、Lazy#to_enum は
素のEnumerator ではなく Enumerator::Lazy を返すようになっています。
//emlist[例][ruby]{
module Enumerable
# 要素をn回ずつ繰り返すメソッド
# 例:[1,2,3].repeat(2) ... -
Enumerator
:: Lazy # enum _ for(method = :each , *args) {|*args| block} -> Enumerator :: Lazy (9319.0) -
Object#to_enum と同じですが、Enumerator::Lazy を返します。
Object#to_enum と同じですが、Enumerator::Lazy を返します。
to_enum は「ブロック付きで呼ぶとループを実行し、ブロックを省略した場合は
Enumerator を返す」ようなメソッドを定義するときによく使われます。
このときに lazy 性が正しく引き継がれるように、Lazy#to_enum は
素のEnumerator ではなく Enumerator::Lazy を返すようになっています。
//emlist[例][ruby]{
module Enumerable
# 要素をn回ずつ繰り返すメソッド
# 例:[1,2,3].repeat(2) ... -
Enumerator
:: Lazy # to _ enum(method = :each , *args) -> Enumerator :: Lazy (9319.0) -
Object#to_enum と同じですが、Enumerator::Lazy を返します。
Object#to_enum と同じですが、Enumerator::Lazy を返します。
to_enum は「ブロック付きで呼ぶとループを実行し、ブロックを省略した場合は
Enumerator を返す」ようなメソッドを定義するときによく使われます。
このときに lazy 性が正しく引き継がれるように、Lazy#to_enum は
素のEnumerator ではなく Enumerator::Lazy を返すようになっています。
//emlist[例][ruby]{
module Enumerable
# 要素をn回ずつ繰り返すメソッド
# 例:[1,2,3].repeat(2) ... -
Enumerator
:: Lazy # to _ enum(method = :each , *args) {|*args| block} -> Enumerator :: Lazy (9319.0) -
Object#to_enum と同じですが、Enumerator::Lazy を返します。
Object#to_enum と同じですが、Enumerator::Lazy を返します。
to_enum は「ブロック付きで呼ぶとループを実行し、ブロックを省略した場合は
Enumerator を返す」ようなメソッドを定義するときによく使われます。
このときに lazy 性が正しく引き継がれるように、Lazy#to_enum は
素のEnumerator ではなく Enumerator::Lazy を返すようになっています。
//emlist[例][ruby]{
module Enumerable
# 要素をn回ずつ繰り返すメソッド
# 例:[1,2,3].repeat(2) ... -
Float
# / (other) -> Float (9319.0) -
算術演算子。商を計算します。
算術演算子。商を計算します。
@param other 二項演算の右側の引数(対象)
//emlist[例][ruby]{
# 商
1.3 / 2.4 # => 0.541666666666667
1.0 / 0 # => Infinity
//} -
Float
# to _ d -> BigDecimal (9319.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 # => Infinity
p (1.0 / 3).to_d / (2.0 / 3).to_d # => 0.5e0
p ((1.0 / 3) / (2.0 / 3... -
Float
# to _ d(prec) -> BigDecimal (9319.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 # => Infinity
p (1.0 / 3).to_d / (2.0 / 3).to_d # => 0.5e0
p ((1.0 / 3) / (2.0 / 3... -
JSON
. # restore(source , proc = nil , options = {}) -> object (9319.0) -
与えられた JSON 形式の文字列を Ruby オブジェクトとしてロードして返します。
与えられた JSON 形式の文字列を Ruby オブジェクトとしてロードして返します。
proc として手続きオブジェクトが与えられた場合は、読み込んだオブジェクトを
引数にその手続きを呼び出します。
require 'json'
str=<<JSON
[1,2,3]
JSON
JSON.load(str) # => [1,2,3]
JSON.load(str, proc{|v| p v }) # => [1,2,3]
# 以下が表示される
# 1
# 2
# 3
# [1,2,3]
str=<<JSON
{ "a"... -
BigDecimal
# _ dump -> String (9073.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) # => Infinity
//}
@see BigDecimal._load, Marshal.#dump,... -
BigDecimal
# sign -> -3 | -2 | -1 | 0 | 1 | 2 | 3 (9073.0) -
自身の符号等の性質に応じて、Integer を返します。
自身の符号等の性質に応じて、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 ... -
Float
# inspect -> String (9055.0) -
自身を人間が読みやすい形の文字列表現にして返します。
自身を人間が読みやすい形の文字列表現にして返します。
固定小数点、浮動小数点の形式か、 "Infinity"、"-Infinity"、"NaN" のいず
れかを返します。
@return 文字列を返します。
//emlist[例][ruby]{
0.00001.to_s # => "1.0e-05"
3.14.to_s # => "3.14"
10000_00000_00000.0.to_s # => "100000000000000.0"
10000_00000_00000_00000.0.to_s # => "1.0e+19"
... -
Float
# to _ s -> String (9055.0) -
自身を人間が読みやすい形の文字列表現にして返します。
自身を人間が読みやすい形の文字列表現にして返します。
固定小数点、浮動小数点の形式か、 "Infinity"、"-Infinity"、"NaN" のいず
れかを返します。
@return 文字列を返します。
//emlist[例][ruby]{
0.00001.to_s # => "1.0e-05"
3.14.to_s # => "3.14"
10000_00000_00000.0.to_s # => "100000000000000.0"
10000_00000_00000_00000.0.to_s # => "1.0e+19"
... -
Complex
# inspect -> String (9037.0) -
自身を人間が読みやすい形の文字列表現にして返します。
自身を人間が読みやすい形の文字列表現にして返します。
//emlist[例][ruby]{
Complex(2).inspect # => "(2+0i)"
Complex('-8/6').inspect # => "((-4/3)+0i)"
Complex('1/2i').inspect # => "(0+(1/2)*i)"
Complex(0, Float::INFINITY).inspect # => "(0+Infinity*i)"
Complex(Float:... -
Complex
# to _ s -> String (9037.0) -
自身を "実部 + 虚部i" 形式の文字列にして返します。
自身を "実部 + 虚部i" 形式の文字列にして返します。
//emlist[例][ruby]{
Complex(2).to_s # => "2+0i"
Complex('-8/6').to_s # => "-4/3+0i"
Complex('1/2i').to_s # => "0+1/2i"
Complex(0, Float::INFINITY).to_s # => "0+Infinity*i"
Complex(Float::NAN, Float::NAN).to_s... -
Kernel
. # format(format , *arg) -> String (9037.0) -
format 文字列を C 言語の sprintf と同じように解釈し、 引数をフォーマットした文字列を返します。
format 文字列を C 言語の sprintf と同じように解釈し、
引数をフォーマットした文字列を返します。
@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@see Kernel.#printf,Time#strftime,Date.strptime
=== sprintf フォーマット
Ruby の sprintf フォーマットは基本的に C 言語の sprintf(3)
のものと同じです。ただし、short や long などの C 特有の型に対する修飾子が
ないこと、2進数の指示子(%b, %B)が存在すること、s... -
Kernel
. # sprintf(format , *arg) -> String (9037.0) -
format 文字列を C 言語の sprintf と同じように解釈し、 引数をフォーマットした文字列を返します。
format 文字列を C 言語の sprintf と同じように解釈し、
引数をフォーマットした文字列を返します。
@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@see Kernel.#printf,Time#strftime,Date.strptime
=== sprintf フォーマット
Ruby の sprintf フォーマットは基本的に C 言語の sprintf(3)
のものと同じです。ただし、short や long などの C 特有の型に対する修飾子が
ないこと、2進数の指示子(%b, %B)が存在すること、s... -
Array
# pack(template) -> String (1021.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
配列の内容を template で指定された文字列にしたがって、
バイナリとしてパックした文字列を返します。
テンプレートは
型指定文字列とその長さ(省略時は1)を並べたものです。長さと
して * が指定された時は「残りのデータ全て」の長さを
表します。型指定文字は以下で述べる pack テンプレート文字列の通りです。
@param template 自身のバイナリとしてパックするためのテンプレートを文字列で指定します。
以下にあげるものは、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができま... -
String
# unpack(template) -> Array (1021.0) -
Array#pack で生成された文字列を テンプレート文字列 template にしたがってアンパックし、 それらの要素を含む配列を返します。
Array#pack で生成された文字列を
テンプレート文字列 template にしたがってアンパックし、
それらの要素を含む配列を返します。
@param template pack テンプレート文字列
@return オブジェクトの配列
以下にあげるものは、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「長さ」の代わりに`*'とすることで「残り全て」
を表すこともできます。
長さの意味はテンプレート文字により異なりますが大抵、
"iiii"
のよう... -
Range
# size -> Integer | Float :: INFINITY | nil (658.0) -
範囲内の要素数を返します。始端、終端のいずれかのオブジェクトが Numeric のサブクラスのオブジェクトではない場合には nil を返します。
範囲内の要素数を返します。始端、終端のいずれかのオブジェクトが
Numeric のサブクラスのオブジェクトではない場合には nil を返します。
//emlist[例][ruby]{
(10..20).size # => 11
("a".."z").size # => nil
(-Float::INFINITY..Float::INFINITY).size # => Infinity
//} -
Numeric
# step(by: 1 , to: Float :: INFINITY) -> Enumerator (649.0) -
self からはじめ step を足しながら limit を越える 前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども 指定できます。
self からはじめ step を足しながら limit を越える
前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども
指定できます。
@param limit ループの上限あるいは下限を数値で指定します。step に負の数が指定された場合は、
下限として解釈されます。
@param step 各ステップの大きさを数値で指定します。負の数を指定することもできます。
@param to 引数limitと同じですが、省略した場合はキーワード引数byが正の
数であれば Float::INF... -
Numeric
# step(by: 1 , to: Float :: INFINITY) {|n| . . . } -> self (649.0) -
self からはじめ step を足しながら limit を越える 前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども 指定できます。
self からはじめ step を足しながら limit を越える
前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども
指定できます。
@param limit ループの上限あるいは下限を数値で指定します。step に負の数が指定された場合は、
下限として解釈されます。
@param step 各ステップの大きさを数値で指定します。負の数を指定することもできます。
@param to 引数limitと同じですが、省略した場合はキーワード引数byが正の
数であれば Float::INF... -
Numeric
# step(by: , to: -Float :: INFINITY) -> Enumerator (649.0) -
self からはじめ step を足しながら limit を越える 前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども 指定できます。
self からはじめ step を足しながら limit を越える
前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども
指定できます。
@param limit ループの上限あるいは下限を数値で指定します。step に負の数が指定された場合は、
下限として解釈されます。
@param step 各ステップの大きさを数値で指定します。負の数を指定することもできます。
@param to 引数limitと同じですが、省略した場合はキーワード引数byが正の
数であれば Float::INF... -
Numeric
# step(by: , to: -Float :: INFINITY) {|n| . . . } -> self (649.0) -
self からはじめ step を足しながら limit を越える 前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども 指定できます。
self からはじめ step を足しながら limit を越える
前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども
指定できます。
@param limit ループの上限あるいは下限を数値で指定します。step に負の数が指定された場合は、
下限として解釈されます。
@param step 各ステップの大きさを数値で指定します。負の数を指定することもできます。
@param to 引数limitと同じですが、省略した場合はキーワード引数byが正の
数であれば Float::INF... -
Enumerator
# size -> Integer | Float :: INFINITY | nil (640.0) -
self の要素数を返します。
self の要素数を返します。
要素数が無限の場合は Float::INFINITY を返します。
Enumerator.new に Proc オブジェクトを指定していた場合はその
実行結果を返します。呼び出した時に要素数が不明であった場合は nil を返し
ます。
//emlist[例][ruby]{
(1..100).to_a.permutation(4).size # => 94109400
loop.size # => Float::INFINITY
(1..100).drop_while.size # => nil
//}
@see Enumerator.new -
Integer
# pow(other , modulo) -> Integer (355.0) -
算術演算子。冪(べき乗)を計算します。
算術演算子。冪(べき乗)を計算します。
@param other 二項演算の右側の引数(対象)
@param modulo 指定すると、計算途中に巨大な値を生成せずに (self**other) % modulo と同じ結果を返します。
@return 計算結果
@raise TypeError 2引数 pow で Integer 以外を指定した場合に発生します。
@raise RangeError 2引数 pow で other に負の数を指定した場合に発生します。
//emlist[][ruby]{
2 ** 3 # => 8
2 ** 0 # => 1
0 ** 0 # => 1
... -
Integer
# to _ f -> Float (355.0) -
self を浮動小数点数(Float)に変換します。
self を浮動小数点数(Float)に変換します。
self が Float の範囲に収まらない場合、Float::INFINITY を返します。
//emlist[][ruby]{
1.to_f # => 1.0
(Float::MAX.to_i * 2).to_f # => Infinity
(-Float::MAX.to_i * 2).to_f # => -Infinity
//} -
JSON
. # generate(object , state = nil) -> String (355.0) -
与えられたオブジェクトを一行の JSON 形式の文字列に変換して返します。
与えられたオブジェクトを一行の JSON 形式の文字列に変換して返します。
デフォルトでは、サイズが最小となる JSON 形式の文字列を生成します。
また、循環参照のチェックを行います。JSON::NaN, JSON::Infinity,
JSON::MinusInfinity を生成することもありません。
unparse は将来削除される予定です。
@param object JSON 形式の文字列に変換するオブジェクトを指定します。
@param state JSON::State または、to_hash や to_h メソッドでハッシュに変換可能なオブジェクトを指定できます。
... -
JSON
. # unparse(object , state = nil) -> String (355.0) -
与えられたオブジェクトを一行の JSON 形式の文字列に変換して返します。
与えられたオブジェクトを一行の JSON 形式の文字列に変換して返します。
デフォルトでは、サイズが最小となる JSON 形式の文字列を生成します。
また、循環参照のチェックを行います。JSON::NaN, JSON::Infinity,
JSON::MinusInfinity を生成することもありません。
unparse は将来削除される予定です。
@param object JSON 形式の文字列に変換するオブジェクトを指定します。
@param state JSON::State または、to_hash や to_h メソッドでハッシュに変換可能なオブジェクトを指定できます。
... -
Numeric
# step(limit , step = 1) -> Enumerator (349.0) -
self からはじめ step を足しながら limit を越える 前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども 指定できます。
self からはじめ step を足しながら limit を越える
前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども
指定できます。
@param limit ループの上限あるいは下限を数値で指定します。step に負の数が指定された場合は、
下限として解釈されます。
@param step 各ステップの大きさを数値で指定します。負の数を指定することもできます。
@param to 引数limitと同じですが、省略した場合はキーワード引数byが正の
数であれば Float::INF... -
Numeric
# step(limit , step = 1) {|n| . . . } -> self (349.0) -
self からはじめ step を足しながら limit を越える 前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども 指定できます。
self からはじめ step を足しながら limit を越える
前までブロックを繰り返します。step は負の数も指定できます。また、limit や step には Float なども
指定できます。
@param limit ループの上限あるいは下限を数値で指定します。step に負の数が指定された場合は、
下限として解釈されます。
@param step 各ステップの大きさを数値で指定します。負の数を指定することもできます。
@param to 引数limitと同じですが、省略した場合はキーワード引数byが正の
数であれば Float::INF... -
String
# to _ f -> Float (337.0) -
文字列を 10 進数表現と解釈して、浮動小数点数 Float に変換します。
文字列を 10 進数表現と解釈して、浮動小数点数 Float に変換します。
浮動小数点数とみなせなくなるところまでを変換対象とします。
途中に変換できないような文字列がある場合、それより先の文字列は無視されます。
//emlist[][ruby]{
p "-10".to_f # => -10.0
p "10e2".to_f # => 1000.0
p "1e-2".to_f # => 0.01
p ".1".to_f # => 0.1
p "1_0_0".to_f # => 100.0 # 数値リテラルと同じように区切りに _ を使える
p " \n10".to_f ... -
Enumerator
. new(size=nil) {|y| . . . } -> Enumerator (319.0) -
Enumerator オブジェクトを生成して返します。与えられたブロックは Enumerator::Yielder オブジェクトを 引数として実行されます。
Enumerator オブジェクトを生成して返します。与えられたブロックは Enumerator::Yielder オブジェクトを
引数として実行されます。
生成された Enumerator オブジェクトに対して each を呼ぶと、この生成時に指定されたブロックを
実行し、Yielder オブジェクトに対して << メソッドが呼ばれるたびに、
each に渡されたブロックが繰り返されます。
new に渡されたブロックが終了した時点で each の繰り返しが終わります。
このときのブロックの返り値が each の返り値となります。
@param size 生成する Enumerator... -
Random
# rand -> Float (319.0) -
一様な擬似乱数を発生させます。
一様な擬似乱数を発生させます。
最初の形式では 0.0 以上 1.0 未満の実数を返します。
二番目の形式では 0 以上 max 未満の数を返します。
max が正の整数なら整数を、正の実数なら実数を返します。
0 や負の数を指定することは出来ません。
三番目の形式では range で指定された範囲の値を返します。
range の始端と終端が共に整数の場合は整数を、少なくとも片方が実数の場合は実数を返します。
rangeが終端を含まない(つまり ... で生成した場合)には終端の値は乱数の範囲から除かれます。
range.end - range.begin が整数を返す場合は rang... -
Random
# rand(max) -> Integer | Float (319.0) -
一様な擬似乱数を発生させます。
一様な擬似乱数を発生させます。
最初の形式では 0.0 以上 1.0 未満の実数を返します。
二番目の形式では 0 以上 max 未満の数を返します。
max が正の整数なら整数を、正の実数なら実数を返します。
0 や負の数を指定することは出来ません。
三番目の形式では range で指定された範囲の値を返します。
range の始端と終端が共に整数の場合は整数を、少なくとも片方が実数の場合は実数を返します。
rangeが終端を含まない(つまり ... で生成した場合)には終端の値は乱数の範囲から除かれます。
range.end - range.begin が整数を返す場合は rang... -
Random
# rand(range) -> Integer | Float (319.0) -
一様な擬似乱数を発生させます。
一様な擬似乱数を発生させます。
最初の形式では 0.0 以上 1.0 未満の実数を返します。
二番目の形式では 0 以上 max 未満の数を返します。
max が正の整数なら整数を、正の実数なら実数を返します。
0 や負の数を指定することは出来ません。
三番目の形式では range で指定された範囲の値を返します。
range の始端と終端が共に整数の場合は整数を、少なくとも片方が実数の場合は実数を返します。
rangeが終端を含まない(つまり ... で生成した場合)には終端の値は乱数の範囲から除かれます。
range.end - range.begin が整数を返す場合は rang... -
Random
. rand -> Float (319.0) -
擬似乱数を発生させます。
擬似乱数を発生させます。
Random::DEFAULT.rand と同じです。
Random#rand を参照してください。
擬似乱数生成器が Kernel.#rand と共通なため Kernel.#srand などの影響を受けます。
@param max 乱数値の上限を正の整数または実数で指定します。
@param range 発生させる乱数値の範囲を Range オブジェクトで指定します。
range の境界は数値でなければなりません。
@raise Errno::EDOM rand(1..Float::INFINITY) などのように範囲に問題が... -
Random
. rand(max) -> Integer | Float (319.0) -
擬似乱数を発生させます。
擬似乱数を発生させます。
Random::DEFAULT.rand と同じです。
Random#rand を参照してください。
擬似乱数生成器が Kernel.#rand と共通なため Kernel.#srand などの影響を受けます。
@param max 乱数値の上限を正の整数または実数で指定します。
@param range 発生させる乱数値の範囲を Range オブジェクトで指定します。
range の境界は数値でなければなりません。
@raise Errno::EDOM rand(1..Float::INFINITY) などのように範囲に問題が... -
Random
. rand(range) -> Integer | Float (319.0) -
擬似乱数を発生させます。
擬似乱数を発生させます。
Random::DEFAULT.rand と同じです。
Random#rand を参照してください。
擬似乱数生成器が Kernel.#rand と共通なため Kernel.#srand などの影響を受けます。
@param max 乱数値の上限を正の整数または実数で指定します。
@param range 発生させる乱数値の範囲を Range オブジェクトで指定します。
range の境界は数値でなければなりません。
@raise Errno::EDOM rand(1..Float::INFINITY) などのように範囲に問題が... -
Range
# bsearch {|obj| . . . } -> object | nil (319.0) -
ブロックの評価結果で範囲内の各要素の大小判定を行い、条件を満たす値を二 分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を 返します。
ブロックの評価結果で範囲内の各要素の大小判定を行い、条件を満たす値を二
分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を
返します。
本メソッドはブロックを評価した結果により以下のいずれかのモードで動作し
ます。
* find-minimum モード
* find-any モード
find-minimum モード(特に理由がない限りはこのモードを使う方がいいでしょ
う)では、条件判定の結果を以下のようにする必要があります。
* 求める値がブロックパラメータの値か前の要素の場合: true を返す
* 求める値がブロックパラメータより後の要...