るりまサーチ (Ruby 2.5.0)

最速Rubyリファレンスマニュアル検索!
91件ヒット [1-91件を表示] (0.079秒)

別のキーワード

  1. _builtin rational
  2. rational **
  3. json/add/rational to_json
  4. json/add/rational json_create
  5. rational /

ライブラリ

クラス

キーワード

検索結果

Rational#rationalize(eps = 0) -> Rational (45709.0)

自身から eps で指定した許容誤差の範囲に収まるような Rational を返 します。

自身から eps で指定した許容誤差の範囲に収まるような Rational を返
します。

eps を省略した場合は self を返します。

@param eps 許容する誤差

//emlist[例][ruby]{
r = Rational(5033165, 16777216)
r.rationalize # => (5033165/16777216)
r.rationalize(Rational(0.01)) # => (3/10)
r.rationalize(Rational(0.1)) # => (1/3)
//}

Rational#floor(precision = 0) -> Integer | Rational (27595.0)

自身と等しいかより小さな整数のうち最大のものを返します。

自身と等しいかより小さな整数のうち最大のものを返します。

@param precision 計算結果の精度

@raise TypeError precision に整数以外のものを指定すると発生します。

//emlist[例][ruby]{
Rational(3).floor # => 3
Rational(2, 3).floor # => 0
Rational(-3, 2).floor # => -2
//}

Rational#to_i とは違う結果を返す事に注意してください。

//emlist[例][ruby]{
Rational(+7, 4).to_i # => ...

Rational#round(precision = 0) -> Integer | Rational (27523.0)

自身ともっとも近い整数を返します。

自身ともっとも近い整数を返します。

中央値 0.5, -0.5 はそれぞれ 1,-1 に切り上げされます。

@param precision 計算結果の精度

@raise TypeError precision に整数以外のものを指定すると発生します。

//emlist[例][ruby]{
Rational(3).round # => 3
Rational(2, 3).round # => 1
Rational(-3, 2).round # => -2
//}

precision を指定した場合は指定した桁数の数値と、上述の性質に最も近い整
数か Rational を返し...

Rational#truncate(precision = 0) -> Rational | Integer (27523.0)

小数点以下を切り捨てて値を整数に変換します。

小数点以下を切り捨てて値を整数に変換します。

@param precision 計算結果の精度

@raise TypeError precision に整数以外のものを指定すると発生します。

//emlist[例][ruby]{
Rational(2, 3).to_i # => 0
Rational(3).to_i # => 3
Rational(300.6).to_i # => 300
Rational(98, 71).to_i # => 1
Rational(-31, 2).to_i # => -15
//}

precision を指定した場合は指定した桁数で切り...

Rational#ceil(precision = 0) -> Integer | Rational (27505.0)

自身と等しいかより大きな整数のうち最小のものを返します。

自身と等しいかより大きな整数のうち最小のものを返します。

@param precision 計算結果の精度

@raise TypeError precision に整数以外のものを指定すると発生します。

//emlist[例][ruby]{
Rational(3).ceil # => 3
Rational(2, 3).ceil # => 1
Rational(-3, 2).ceil # => -1
//}

precision を指定した場合は指定した桁数の数値と、上述の性質に最も近い整
数か Rational を返します。

//emlist[例][ruby]{
Ra...

絞り込み条件を変える

Rational#convert(*arg) -> Rational (27391.0)

引数を有理数(Rational)に変換した結果を返します。

引数を有理数(Rational)に変換した結果を返します。

@param arg 変換対象のオブジェクトです。

Kernel.#Rational の本体です。

@see Kernel.#Rational

Rational#**(other) -> Rational | Float (27361.0)

冪(べき)乗を計算します。

冪(べき)乗を計算します。

@param other 自身を other 乗する数

other に Float を指定した場合は、計算結果を Float で返しま
す。other が有理数であっても、計算結果が無理数だった場合は Float
を返します。

//emlist[例][ruby]{
r = Rational(3, 4)
r ** Rational(2, 1) # => (9/16)
r ** 2 # => (9/16)
r ** 2.0 # => 0.5625
r ** Rational(1, 2) # => 0.866...

Rational#/(other) -> Rational | Float (27346.0)

商を計算します。

商を計算します。

@param other 自身を割る数

other に Float を指定した場合は、計算結果を Float で返します。

//emlist[例][ruby]{
r = Rational(3, 4)
r / 2 # => (3/8)
r / 2.0 # => 0.375
r / 0.5 # => 1.5
r / Rational(1, 2) # => (3/2)
r / 0 # => ZeroDivisionError
//}

@raise ZeroD...

Rational#abs -> Rational (27346.0)

自身の絶対値を返します。

自身の絶対値を返します。

//emlist[例][ruby]{
Rational(1, 2).abs # => (1/2)
Rational(-1, 2).abs # => (1/2)
//}

Rational#magnitude -> Rational (27346.0)

自身の絶対値を返します。

自身の絶対値を返します。

//emlist[例][ruby]{
Rational(1, 2).abs # => (1/2)
Rational(-1, 2).abs # => (1/2)
//}

絞り込み条件を変える

Rational#quo(other) -> Rational | Float (27346.0)

商を計算します。

商を計算します。

@param other 自身を割る数

other に Float を指定した場合は、計算結果を Float で返します。

//emlist[例][ruby]{
r = Rational(3, 4)
r / 2 # => (3/8)
r / 2.0 # => 0.375
r / 0.5 # => 1.5
r / Rational(1, 2) # => (3/2)
r / 0 # => ZeroDivisionError
//}

@raise ZeroD...

Rational#*(other) -> Rational | Float (27343.0)

積を計算します。

積を計算します。

@param other 自身に掛ける数

other に Float を指定した場合は、計算結果を Float で返しま
す。

//emlist[例][ruby]{
r = Rational(3, 4)
r * 2 # => (3/2)
r * 4 # => (3/1)
r * 0.5 # => 0.375
r * Rational(1, 2) # => (3/8)
//}

Rational#+(other) -> Rational | Float (27343.0)

和を計算します。

和を計算します。

@param other 自身に足す数

other に Float を指定した場合は、計算結果を Float で返しま
す。

//emlist[例][ruby]{
r = Rational(3, 4)
r + Rational(1, 2) # => (5/4)
r + 1 # => (7/4)
r + 0.5 # => 1.25
//}

Rational#to_r -> Rational (27343.0)

自身を返します。

自身を返します。

@return 自身を返します。

//emlist[例][ruby]{
Rational(3, 4).to_r # => (3/4)
Rational(8).to_r # => (8/1)
//}

Rational#-(other) -> Rational | Float (27325.0)

差を計算します。

差を計算します。

@param other 自身から引く数

other に Float を指定した場合は、計算結果を Float で返しま
す。

//emlist[例][ruby]{
r = Rational(3, 4)
r - 1 # => (-1/4)
r - 0.5 # => 0.25
//}

絞り込み条件を変える

Rational#-@ -> Rational (27325.0)

単項演算子の - です。 self の符号を反転させたものを返します。

単項演算子の - です。
self の符号を反転させたものを返します。

//emlist[例][ruby]{
r = Rational(3, 4)
- r # => (-3/4)
//}

Rational#to_i -> Integer (27223.0)

小数点以下を切り捨てて値を整数に変換します。

小数点以下を切り捨てて値を整数に変換します。

@param precision 計算結果の精度

@raise TypeError precision に整数以外のものを指定すると発生します。

//emlist[例][ruby]{
Rational(2, 3).to_i # => 0
Rational(3).to_i # => 3
Rational(300.6).to_i # => 300
Rational(98, 71).to_i # => 1
Rational(-31, 2).to_i # => -15
//}

precision を指定した場合は指定した桁数で切り...

Rational#<=>(other) -> -1 | 0 | 1 | nil (27148.0)

self と other を比較して、self が大きい時に 1、等しい時に 0、小さい時に -1 を返します。比較できない場合はnilを返します。

self と other を比較して、self が大きい時に 1、等しい時に 0、小さい時に
-1 を返します。比較できない場合はnilを返します。

@param other 自身と比較する数値

@return -1 か 0 か 1 か nil を返します。

//emlist[例][ruby]{
Rational(2, 3) <=> Rational(2, 3) # => 0
Rational(5) <=> 5 # => 0
Rational(2, 3) <=> Rational(1,3) # => 1
Rational(1, 3...

Rational#to_f -> Float (27148.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...

Rational#==(other) -> bool (27112.0)

数値として等しいか判定します。

数値として等しいか判定します。

@param other 自身と比較する数値

@return self と other が等しい場合 true を返します。
そうでなければ false を返します。

//emlist[例][ruby]{
Rational(2, 3) == Rational(2, 3) # => true
Rational(5) == 5 # => true
Rational(0) == 0.0 # => true
Rational('1/3') == 0....

絞り込み条件を変える

Rational#denominator -> Integer (27094.0)

分母を返します。常に正の整数を返します。

分母を返します。常に正の整数を返します。

@return 分母を返します。

//emlist[例][ruby]{
Rational(7).denominator # => 1
Rational(7, 1).denominator # => 1
Rational(9, -4).denominator # => 4
Rational(-2, -10).denominator # => 5
//}

@see Rational#numerator

Rational#fdiv(other) -> Float (27094.0)

self を other で割った商を Float で返します。 other に虚数を指定することは出来ません。

self を other で割った商を Float で返します。
other に虚数を指定することは出来ません。

@param other 自身を割る数

//emlist[例][ruby]{
Rational(2, 3).fdiv(1) # => 0.6666666666666666
Rational(2, 3).fdiv(0.5) # => 1.3333333333333333
Rational(2).fdiv(3) # => 0.6666666666666666

Rational(1).fdiv(Complex(1, 0)) # => 1.0
Rational(1)...

Rational#inspect -> String (27094.0)

自身を人間が読みやすい形の文字列表現にして返します。

自身を人間が読みやすい形の文字列表現にして返します。

"(3/5)", "(-17/7)" のように10進数の表記を返します。

@return 有理数の表記にした文字列を返します。

//emlist[例][ruby]{
Rational(5, 8).inspect # => "(5/8)"
Rational(2).inspect # => "(2/1)"
Rational(-8, 6).inspect # => "(-4/3)"
Rational(0.5).inspect # => "(1/2)"
//}

@see Rational#to_s

Rational#numerator -> Integer (27094.0)

分子を返します。

分子を返します。

@return 分子を返します。

//emlist[例][ruby]{
Rational(7).numerator # => 7
Rational(7, 1).numerator # => 7
Rational(9, -4).numerator # => -9
Rational(-2, -10).numerator # => 1
//}

@see Rational#denominator

Rational#to_s -> String (27094.0)

自身を人間が読みやすい形の文字列表現にして返します。

自身を人間が読みやすい形の文字列表現にして返します。

"3/5", "-17/7" のように10進数の表記を返します。

@return 有理数の表記にした文字列を返します。

//emlist[例][ruby]{
Rational(3, 4).to_s # => "3/4"
Rational(8).to_s # => "8/1"
Rational(-8, 6).to_s # => "-4/3"
Rational(0.5).to_s # => "1/2"
//}

@see Rational#inspect

絞り込み条件を変える

Rational#marshal_dump -> Array (27070.0)

Marshal.#load のためのメソッドです。 Rational::compatible#marshal_load で復元可能な配列を返します。

Marshal.#load のためのメソッドです。
Rational::compatible#marshal_load で復元可能な配列を返します。

[注意] Rational::compatible は通常の方法では参照する事ができません。

Rational#negative? -> bool (27058.0)

self が 0 未満の場合に true を返します。そうでない場合に false を返します。

self が 0 未満の場合に true を返します。そうでない場合に false を返します。

//emlist[例][ruby]{
Rational(1, 2).negative? # => false
Rational(-1, 2).negative? # => true
//}

@see Rational#positive?

Rational#positive? -> bool (27058.0)

self が 0 より大きい場合に true を返します。そうでない場合に false を返します。

self が 0 より大きい場合に true を返します。そうでない場合に false を返します。

//emlist[例][ruby]{
Rational(1, 2).positive? # => true
Rational(-1, 2).positive? # => false
//}

@see Rational#negative?

Rational#to_json(*args) -> String (27058.0)

自身を JSON 形式の文字列に変換して返します。

自身を JSON 形式の文字列に変換して返します。

内部的にはハッシュにデータをセットしてから JSON::Generator::GeneratorMethods::Hash#to_json を呼び出しています。

@param args 使用しません。

//emlist[例][ruby]{
require 'json/add/rational'
Rational(1, 3).to_json # => "{\"json_class\":\"Rational\",\"n\":1,\"d\":3}"
//}

@see JSON::Generator::GeneratorMethods::H...

Rational#coerce(other) -> Array (27040.0)

自身と other が同じクラスになるよう、自身か other を変換し [other, self] という 配列にして返します。

自身と other が同じクラスになるよう、自身か other を変換し [other, self] という
配列にして返します。

@param other 比較または変換するオブジェクト

//emlist[例][ruby]{
Rational(1).coerce(2) # => [(2/1), (1/1)]
Rational(1).coerce(2.2) # => [2.2, 1.0]
//}

絞り込み条件を変える

Rational#to_d(nFig) -> BigDecimal (27040.0)

自身を BigDecimal に変換します。

自身を BigDecimal に変換します。

nFig 桁まで計算を行います。

@param nFig 計算を行う桁数

@return BigDecimal に変換したオブジェクト

@raise ArgumentError nFig に 0 以下を指定した場合に発生します。

//emlist[][ruby]{
require "bigdecimal"
require "bigdecimal/util"
p Rational(1, 3).to_d(3) # => 0.333e0
p Rational(1, 3).to_d(10) # => 0.3333333333e0
//}

Rational#hash -> Integer (27004.0)

自身のハッシュ値を返します。

自身のハッシュ値を返します。

@return ハッシュ値を返します。


@see Object#hash

Float#rationalize -> Rational (18676.0)

自身から eps で指定した許容誤差の範囲に収まるような Rational を返 します。

自身から eps で指定した許容誤差の範囲に収まるような Rational を返
します。

eps を省略した場合は誤差が最も小さくなるような Rational を返しま
す。

@param eps 許容する誤差

//emlist[例][ruby]{
0.3.rationalize # => (3/10)
1.333.rationalize # => (1333/1000)
1.333.rationalize(0.01) # => (4/3)
//}

Float#rationalize(eps) -> Rational (18676.0)

自身から eps で指定した許容誤差の範囲に収まるような Rational を返 します。

自身から eps で指定した許容誤差の範囲に収まるような Rational を返
します。

eps を省略した場合は誤差が最も小さくなるような Rational を返しま
す。

@param eps 許容する誤差

//emlist[例][ruby]{
0.3.rationalize # => (3/10)
1.333.rationalize # => (1333/1000)
1.333.rationalize(0.01) # => (4/3)
//}

Complex#rationalize -> Rational (18661.0)

自身を Rational に変換します。

自身を Rational に変換します。

@param eps 許容する誤差。常に無視されます。

@raise RangeError 虚部が実数か、0 ではない場合に発生します。

//emlist[例][ruby]{
Complex(3).to_r # => (3/1)
Complex(3, 2).to_r # => RangeError
//}

絞り込み条件を変える

Complex#rationalize(eps) -> Rational (18661.0)

自身を Rational に変換します。

自身を Rational に変換します。

@param eps 許容する誤差。常に無視されます。

@raise RangeError 虚部が実数か、0 ではない場合に発生します。

//emlist[例][ruby]{
Complex(3).to_r # => (3/1)
Complex(3, 2).to_r # => RangeError
//}

Integer#rationalize -> Rational (18658.0)

自身を Rational に変換します。

自身を Rational に変換します。

@param eps 許容する誤差

引数 eps は常に無視されます。

//emlist[][ruby]{
2.rationalize # => (2/1)
2.rationalize(100) # => (2/1)
2.rationalize(0.1) # => (2/1)
//}

Integer#rationalize(eps) -> Rational (18658.0)

自身を Rational に変換します。

自身を Rational に変換します。

@param eps 許容する誤差

引数 eps は常に無視されます。

//emlist[][ruby]{
2.rationalize # => (2/1)
2.rationalize(100) # => (2/1)
2.rationalize(0.1) # => (2/1)
//}

NilClass#rationalize -> Rational (18610.0)

0/1 を返します。

0/1 を返します。

@param eps 許容する誤差

引数 eps は常に無視されます。

//emlist[例][ruby]{
nil.rationalize # => (0/1)
nil.rationalize(100) # => (0/1)
nil.rationalize(0.1) # => (0/1)
//}

NilClass#rationalize(eps) -> Rational (18610.0)

0/1 を返します。

0/1 を返します。

@param eps 許容する誤差

引数 eps は常に無視されます。

//emlist[例][ruby]{
nil.rationalize # => (0/1)
nil.rationalize(100) # => (0/1)
nil.rationalize(0.1) # => (0/1)
//}

絞り込み条件を変える

Complex#to_r -> Rational (9361.0)

自身を Rational に変換します。

自身を Rational に変換します。

@param eps 許容する誤差。常に無視されます。

@raise RangeError 虚部が実数か、0 ではない場合に発生します。

//emlist[例][ruby]{
Complex(3).to_r # => (3/1)
Complex(3, 2).to_r # => RangeError
//}

String#to_r -> Rational (409.0)

自身を有理数(Rational)に変換した結果を返します。

自身を有理数(Rational)に変換した結果を返します。

Kernel.#Rational に文字列を指定した時のように、以下のいずれかの形
式で指定します。

* "1/3" のような分数の形式
* "0.3" のような10進数の形式
* "0.3E0" のような x.xEn の形式
* 数字をアンダースコアで繋いだ形式

//emlist[例][ruby]{
' 2 '.to_r # => (2/1)
'1/3'.to_r # => (1/3)
'-9.2'.to_r # => (-46/5)
'-9.2E2'.to_r ...

BigDecimal#to_r -> Rational (355.0)

self を Rational オブジェクトに変換します。

self を Rational オブジェクトに変換します。

Date#-(x) -> Rational | Date (355.0)

x が日付オブジェクトなら、ふたつの差を Rational で返します。単位は日です。 あるいは x が数値ならば、self より x 日前の日付を返します。

x が日付オブジェクトなら、ふたつの差を Rational で返します。単位は日です。
あるいは
x が数値ならば、self より x 日前の日付を返します。

@param x 日数、あるいは日付オブジェクト
@raise TypeError x が数値でも日付オブジェクトでもない場合に発生します。

Float#to_r -> Rational (355.0)

自身を Rational に変換します。

自身を Rational に変換します。

//emlist[例][ruby]{
0.5.to_r # => (1/2)
//}

絞り込み条件を変える

Integer#to_r -> Rational (355.0)

自身を Rational に変換します。

自身を Rational に変換します。

//emlist[][ruby]{
1.to_r # => (1/1)
(1<<64).to_r # => (18446744073709551616/1)
//}

Numeric#quo(other) -> Rational | Float | Complex (325.0)

self を other で割った商を返します。 整商を得たい場合は Numeric#div を使ってください。

self を other で割った商を返します。
整商を得たい場合は Numeric#div を使ってください。

Numeric#fdiv が結果を Float で返すメソッドなのに対して quo はなるべく正確な数値を返すことを意図しています。
具体的には有理数の範囲に収まる計算では Rational の値を返します。
Float や Complex が関わるときはそれらのクラスになります。

Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。


@param other 自身を割る数を指定します。

//emlist[例][ruby]{
1.quo(3)...

Time#subsec -> Integer | Rational (325.0)

時刻を表す分数を返します。

時刻を表す分数を返します。

Rational を返す場合があります。

//emlist[][ruby]{
t = Time.local(2000,1,2,3,4,5,6)
p "%10.9f" % t.to_f # => "946749845.000005960"
p t.subsec #=> (3/500000)
//}

to_f の値と subsec の値の下のほうの桁の値は異なる場合があります。
というのは IEEE 754 double はそれを表すのに十分な精度を
持たないからです。subsec で得られる値が正確です。

DateTime#sec_fraction -> Rational (310.0)

秒の小数点以下の部分を表す分数を返します。

秒の小数点以下の部分を表す分数を返します。

DateTime#second_fraction -> Rational (310.0)

秒の小数点以下の部分を表す分数を返します。

秒の小数点以下の部分を表す分数を返します。

絞り込み条件を変える

Matrix#cofactor_expansion(row: nil, column: nil) -> object | Integer | Rational | Float (310.0)

row 行、もしくは column 列に関するラプラス展開をする。

row 行、もしくは column 列に関するラプラス展開をする。

通常の行列に対してはこれは単に固有値を計算するだけです。かわりにMatrix#determinant を
利用すべきです。

変則的な形状の行列に対してはそれ以上の意味を持ちます。例えば
row行/column列が行列やベクトルである場合には

//emlist[例][ruby]{
require 'matrix'
# Matrix[[7,6], [3,9]].laplace_expansion(column: 1) # => 45
Matrix[[Vector[1, 0], Vector[0, 1]], [2, 3]]....

Matrix#det_e -> Rational | Float (310.0)

このメソッドは deprecated です。 Matrix#determinant を代わりに使ってください。

このメソッドは deprecated です。
Matrix#determinant を代わりに使ってください。

Matrix#determinant_e -> Rational | Float (310.0)

このメソッドは deprecated です。 Matrix#determinant を代わりに使ってください。

このメソッドは deprecated です。
Matrix#determinant を代わりに使ってください。

Matrix#laplace_expansion(row: nil, column: nil) -> object | Integer | Rational | Float (310.0)

row 行、もしくは column 列に関するラプラス展開をする。

row 行、もしくは column 列に関するラプラス展開をする。

通常の行列に対してはこれは単に固有値を計算するだけです。かわりにMatrix#determinant を
利用すべきです。

変則的な形状の行列に対してはそれ以上の意味を持ちます。例えば
row行/column列が行列やベクトルである場合には

//emlist[例][ruby]{
require 'matrix'
# Matrix[[7,6], [3,9]].laplace_expansion(column: 1) # => 45
Matrix[[Vector[1, 0], Vector[0, 1]], [2, 3]]....

Matrix#tr -> Integer | Float | Rational | Complex (310.0)

トレース (trace) を返します。

トレース (trace) を返します。

行列のトレース (trace) とは、対角要素の和です。

//emlist[例][ruby]{
require 'matrix'
Matrix[[7,6], [3,9]].trace # => 16
//}

trace は正方行列でのみ定義されます。

@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します

絞り込み条件を変える

Matrix#trace -> Integer | Float | Rational | Complex (310.0)

トレース (trace) を返します。

トレース (trace) を返します。

行列のトレース (trace) とは、対角要素の和です。

//emlist[例][ruby]{
require 'matrix'
Matrix[[7,6], [3,9]].trace # => 16
//}

trace は正方行列でのみ定義されます。

@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方行列でない場合に発生します

Date#ajd -> Rational (307.0)

このメソッドは Date#jd と似ていますが、天文学的なユリウス日を返します。 時刻を含みます。

このメソッドは Date#jd と似ていますが、天文学的なユリウス日を返します。
時刻を含みます。

Date#amjd -> Rational (307.0)

このメソッドは Date#mjd と似ていますが、天文学的な修正ユリウス日を返します。 時刻を含みます。

このメソッドは Date#mjd と似ていますが、天文学的な修正ユリウス日を返します。
時刻を含みます。

DateTime#offset -> Rational (307.0)

時差を返します。

時差を返します。

Matrix#cofactor(row, column) -> Integer | Rational | Float (307.0)

(row, column)-余因子を返します。

(row, column)-余因子を返します。

各要素の型によって返り値が変わります。

@param row 行
@param column 列
@raise ExceptionForMatrix::ErrDimensionMismatch 行列が正方でない場合に発生します。
@see Matrix#adjugate

絞り込み条件を変える

NilClass#to_r -> Rational (307.0)

0/1 を返します。

0/1 を返します。

//emlist[例][ruby]{
nil.to_r # => (0/1)
//}

Time#to_r -> Rational (307.0)

起算時からの経過秒数を有理数で返します。1 秒に満たない経過も 表現されます。

起算時からの経過秒数を有理数で返します。1 秒に満たない経過も
表現されます。

//emlist[][ruby]{
t = Time.local(2000,1,2,3,4,5,6)
p t # => 2000-01-02 03:04:05 +0900
p t.to_r # => (473374922500003/500000)
//}

Numeric#coerce(other) -> [Numeric] (112.0)

自身と other が同じクラスになるよう、自身か other を変換し [other, self] という配列にして返します。

自身と other が同じクラスになるよう、自身か other を変換し [other, self] という配列にして返します。

デフォルトでは self と other を Float に変換して [other, self] という配列にして返します。
Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。
以下は Rational の coerce のソースです。other が自身の知らない数値クラスであった場合、
super を呼んでいることに注意して下さい。


//emlist[例][ruby]{
# lib/rational.rb より

def co...

Numeric#denominator -> Integer (70.0)

自身を Rational に変換した時の分母を返します。

自身を Rational に変換した時の分母を返します。

@return 分母を返します。


@see Numeric#numerator、Integer#denominator、Float#denominator、Rational#denominator、Complex#denominator

Numeric#numerator -> Integer (70.0)

自身を Rational に変換した時の分子を返します。

自身を Rational に変換した時の分子を返します。

@return 分子を返します。


@see Numeric#denominator、Integer#numerator、Float#numerator、Rational#numerator、Complex#numerator

絞り込み条件を変える

Random#rand -> Float (58.0)

一様な擬似乱数を発生させます。

一様な擬似乱数を発生させます。

最初の形式では 0.0 以上 1.0 未満の実数を返します。

二番目の形式では 0 以上 max 未満の数を返します。
max が正の整数なら整数を、正の実数なら実数を返します。
0 や負の数を指定することは出来ません。

三番目の形式では range で指定された範囲の値を返します。
range の始端と終端が共に整数の場合は整数を、少なくとも片方が実数の場合は実数を返します。
rangeが終端を含まない(つまり ... で生成した場合)には終端の値は乱数の範囲から除かれます。
range.end - range.begin が整数を返す場合は rang...

Random#rand(max) -> Integer | Float (58.0)

一様な擬似乱数を発生させます。

一様な擬似乱数を発生させます。

最初の形式では 0.0 以上 1.0 未満の実数を返します。

二番目の形式では 0 以上 max 未満の数を返します。
max が正の整数なら整数を、正の実数なら実数を返します。
0 や負の数を指定することは出来ません。

三番目の形式では range で指定された範囲の値を返します。
range の始端と終端が共に整数の場合は整数を、少なくとも片方が実数の場合は実数を返します。
rangeが終端を含まない(つまり ... で生成した場合)には終端の値は乱数の範囲から除かれます。
range.end - range.begin が整数を返す場合は rang...

Random#rand(range) -> Integer | Float (58.0)

一様な擬似乱数を発生させます。

一様な擬似乱数を発生させます。

最初の形式では 0.0 以上 1.0 未満の実数を返します。

二番目の形式では 0 以上 max 未満の数を返します。
max が正の整数なら整数を、正の実数なら実数を返します。
0 や負の数を指定することは出来ません。

三番目の形式では range で指定された範囲の値を返します。
range の始端と終端が共に整数の場合は整数を、少なくとも片方が実数の場合は実数を返します。
rangeが終端を含まない(つまり ... で生成した場合)には終端の値は乱数の範囲から除かれます。
range.end - range.begin が整数を返す場合は rang...

Float#denominator -> Integer (52.0)

自身を Rational に変換した時の分母を返します。

自身を Rational に変換した時の分母を返します。

@return 分母を返します。

//emlist[例][ruby]{
2.0.denominator # => 1
0.5.denominator # => 2
//}

@see Float#numerator

Float#numerator -> Integer (52.0)

自身を Rational に変換した時の分子を返します。

自身を Rational に変換した時の分子を返します。

@return 分子を返します。

//emlist[例][ruby]{
2.0.numerator # => 2
0.5.numerator # => 1
//}

@see Float#denominator

絞り込み条件を変える

Matrix#elements_to_r -> Matrix (52.0)

各要素を有理数 Rational に変換した行列を返します。

各要素を有理数 Rational に変換した行列を返します。

このメソッドは deprecated です。 map(&:to_r) を使ってください。

Vector#elements_to_r -> Vector (52.0)

ベクトルの各成分をRationalに変換したベクトルを返します。

ベクトルの各成分をRationalに変換したベクトルを返します。

このメソッドは deprecated です。 map(&:to_r) を使ってください。

//emlist[例][ruby]{
require 'matrix'

v = Vector.elements([2.5, 3.0, 5.75, 7])
p v.elements_to_r
# => Vector[(5/2), (3/1), (23/4), (7/1)]
//}

Integer#/(other) -> Numeric (40.0)

除算の算術演算子。

除算の算術演算子。

other が Integer の場合、整商(整数の商)を Integer で返します。
普通の商(剰余を考えない商)を越えない最大の整数をもって整商とします。

other が Float、Rational、Complex の場合、普通の商を other と
同じクラスのインスタンスで返します。

@param other 二項演算の右側の引数(対象)
@return 計算結果

//emlist[例][ruby]{
7 / 2 # => 3
7 / -2 # => -4
7 / 2.0 # => 3.5
7 / Rational(2, 1) # => (7/2)
7...

BigDecimal#coerce(other) -> Array (22.0)

self と other が同じクラスになるよう、self か other を変換し [other, self] という配列にして返します。

self と other が同じクラスになるよう、self か other を変換し [other,
self] という配列にして返します。

@param other 比較または変換するオブジェクト

BigDecimal#coerce は Ruby における強制型変換のための機能です。
BigDecimal オブジェクトとその他のオブジェクト間の各種の計算は
BigDecimal#coerce の結果を元に行われます。

//emlist[][ruby]{
require "bigdecimal"
a = BigDecimal("1.0")
b = a / 2.0 # => 0.5e0
...

Complex#*(other) -> Complex (22.0)

積を計算します。

積を計算します。

@param other 自身に掛ける数

//emlist[例][ruby]{
Complex(1, 2) * 2 # => (2+4i)
Complex(1, 2) * Complex(2, 3) # => (-4+7i)
Complex(1, 2) * Rational(1, 2) # => ((1/2)+(1/1)*i)
//}

絞り込み条件を変える

Date#<=>(other) -> -1 | 0 | 1 | nil (22.0)

二つの日付を比較します。 同じ日付なら 0 を、self が other よりあとの日付なら 1 を、 その逆なら -1 を返します。

二つの日付を比較します。
同じ日付なら 0 を、self が other よりあとの日付なら 1 を、
その逆なら -1 を返します。

other は日付オブジェクトか、
天文学的なユリウス日をあらわす数値を指定します。
そうでない場合、比較ができないので nil を返します。

//emlist[][ruby]{
require "date"

p Date.new(2001, 2, 3) <=> Date.new(2001, 2, 4) # => -1
p Date.new(2001, 2, 3) <=> Date.new(2001, 2, 3) # => 0
p Date.new(20...

Integer#div(other) -> Integer (22.0)

整商(整数の商)を返します。 普通の商(剰余を考えない商)を越えない最大の整数をもって整商とします。

整商(整数の商)を返します。
普通の商(剰余を考えない商)を越えない最大の整数をもって整商とします。

other が Integer オブジェクトの場合、Integer#/ の結果と一致します。

div に対応する剰余メソッドは modulo です。

@param other 二項演算の右側の引数(対象)
@return 計算結果

//emlist[例][ruby]{
7.div(2) # => 3
7.div(-2) # => -4
7.div(2.0) # => 3
7.div(Rational(2, 1)) # => 3

begin
2.div(0)
rescue => ...

Matrix#coerce(other) -> Array (22.0)

他の数値オブジェクトとの変換を行います。

他の数値オブジェクトとの変換を行います。

他の数値オブジェクトをMatrix::Scalarのオブジェクトに変換し、selfとの組を配列として返します。

@param other 変換する数値オブジェクト

//emlist[例][ruby]{
require 'matrix'
a1 = [1, 2]
a2 = [-1.25, 2.2]
m = Matrix[a1, a2]
r = Rational(1, 2)
p m.coerce(r) #=> [#<Matrix::Scalar:0x832df18 @value=(1/2)>, Matrix[[1, 2], [-1.25, 2.2]]]...

Matrix#det -> Numeric (22.0)

行列式 (determinant) の値を返します。

行列式 (determinant) の値を返します。

Float を使用すると、精度が不足するため、誤った結果が生じる可能性があることに注意してください。
代わりに、Rational や BigDecimal などの正確なオブジェクトを使用することを検討してください。

@raise ExceptionForMatrix::ErrDimensionMismatch 正方行列でない場合に発生します

//emlist[例][ruby]{
require 'matrix'

p Matrix[[2, 1], [-1, 2]].det #=> 5
p Matrix[[2.0, 1...

Matrix#determinant -> Numeric (22.0)

行列式 (determinant) の値を返します。

行列式 (determinant) の値を返します。

Float を使用すると、精度が不足するため、誤った結果が生じる可能性があることに注意してください。
代わりに、Rational や BigDecimal などの正確なオブジェクトを使用することを検討してください。

@raise ExceptionForMatrix::ErrDimensionMismatch 正方行列でない場合に発生します

//emlist[例][ruby]{
require 'matrix'

p Matrix[[2, 1], [-1, 2]].det #=> 5
p Matrix[[2.0, 1...

絞り込み条件を変える

Matrix#rank -> Integer (22.0)

階数 (rank) を返します。

階数 (rank) を返します。

Float を使用すると、精度が不足するため、誤った結果が生じる可能性があることに注意してください。
代わりに、Rational や BigDecimal などの正確なオブジェクトを使用することを検討してください。

//emlist[][ruby]{
require 'matrix'
m = Matrix[[2, 6], [1, 3]]
m.rank # => 1
//}

Numeric#-@ -> Numeric (22.0)

単項演算子の - です。 self の符号を反転させたものを返します。

単項演算子の - です。
self の符号を反転させたものを返します。

このメソッドは、二項演算子 - で 0 - self によって定義されています。


@see Integer#-@、Float#-@、Rational#-@、Complex#-@

Numeric#/(other) -> Numeric (22.0)

除算の演算子です。 self を other で割った商を返します。

除算の演算子です。
self を other で割った商を返します。

Numeric では定義されておらず、サブクラスの実装によります。


@see Integer#/, Float#/, Rational#/, Complex#/

Numeric#finite? -> bool (22.0)

self の絶対値が有限値の場合に true を、そうでない場合に false を返します。

self の絶対値が有限値の場合に true を、そうでない場合に false を返します。

//emlist[例][ruby]{
10.finite? # => true
Rational(3).finite? # => true

Float::INFINITY.finite? # => false
Float::INFINITY.is_a?(Numeric) # => true
//}

@see Numeric#infinite?

Numeric#i -> Complex (22.0)

Complex(0, self) を返します。

Complex(0, self) を返します。

ただし、Complex オブジェクトでは利用できません。

//emlist[例][ruby]{
10.i # => (0+10i)
-10.i # => (0-10i)
(0.1).i # => (0+0.1i)
Rational(1, 2).i # => (0+(1/2)*i)
//}

絞り込み条件を変える

Numeric#nonzero? -> self | nil (22.0)

自身がゼロの時 nil を返し、非ゼロの時 self を返します。

自身がゼロの時 nil を返し、非ゼロの時 self を返します。

//emlist[例][ruby]{
p 10.nonzero? #=> 10
p 0.nonzero? #=> nil
p 0.0.nonzero? #=> nil
p Rational(0, 2).nonzero? #=> nil
//}

非ゼロの時に self を返すため、自身が 0 の時に他の処理をさせたい場合に以
下のように記述する事もできます。

//emlist[例][ruby]{
a = %w( z Bb bB bb BB a...

Numeric#real -> Numeric (22.0)

自身を返します。

自身を返します。

Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。

//emlist[例][ruby]{
10.real # => 10
-10.real # => -10
0.1.real # => 0.1
Rational(2, 3).real # => (2/3)
//}

@see Numeric#imag、Complex#real

Numeric#real? -> bool (22.0)

常に true を返します。(Complex またはそのサブクラスではないことを意味します。)

常に true を返します。(Complex またはそのサブクラスではないことを意味します。)

Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。

//emlist[例][ruby]{
10.real? # => true
-10.real? # => true
0.1.real? # => true
Rational(2, 3).real? # => true
//}

@see Numeric#integer?、Complex#real?

Numeric#to_c -> Complex (22.0)

自身を複素数 (Complex) に変換します。Complex(self, 0) を返します。

自身を複素数 (Complex) に変換します。Complex(self, 0) を返します。

//emlist[例][ruby]{
1.to_c # => (1+0i)
-1.to_c # => (-1+0i)
1.0.to_c # => (1.0+0i)
Rational(1, 2).to_c # => ((1/2)+0i)
//}

Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。

Numeric#to_int -> Integer (22.0)

self.to_i と同じです。

self.to_i と同じです。

//emlist[例][ruby]{
(2+0i).to_int # => 2
Rational(3).to_int # => 3
//}

絞り込み条件を変える

StringIO#putc(ch) -> object (22.0)

文字 ch を自身に書き込みます。 ch が数字なら 0 〜 255 の範囲の対応する文字書き込みます。 ch が文字列なら、その先頭の文字を書き込みます。ch を返します。

文字 ch を自身に書き込みます。 ch が数字なら 0 〜 255 の範囲の対応する文字書き込みます。
ch が文字列なら、その先頭の文字を書き込みます。ch を返します。

@param ch 書き込みたい文字を、整数か文字列で指定します。ch が Float や Rational であっても、整数に変換されてから書き込まれます。

@raise IOError 自身が書き込み用にオープンされていなければ発生します。