ライブラリ
- ビルトイン (36)
- bigdecimal (2)
-
bigdecimal
/ math (6) - cmath (23)
-
irb
/ ext / math-mode (3) -
irb
/ extend-command (1) - mathn (2)
- matrix (1)
- rake (1)
クラス
- Complex (4)
- Float (4)
-
IRB
:: Context (3) - Integer (2)
- Module (2)
- Numeric (4)
-
Rake
:: FileList (1) - Range (2)
- Vector (1)
モジュール
- BigMath (8)
- CMath (23)
- Enumerable (4)
-
IRB
:: ContextExtender (1) - Kernel (2)
- Math (12)
オブジェクト
- main (1)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) - DomainError (1)
- Marshal フォーマット (1)
-
NEWS for Ruby 2
. 2 . 0 (1) - PI (1)
- Ruby用語集 (1)
- acos (1)
- acosh (1)
- angle (3)
-
angle
_ with (1) - arg (3)
- asin (1)
- asinh (1)
- atan (2)
- atan2 (1)
- atanh (1)
- bigdecimal (1)
-
bigdecimal
/ math (1) - bsearch (2)
- cbrt (1)
- cos (2)
- cosh (1)
- digits (2)
- erf (1)
- erfc (1)
- exp (3)
- exp! (1)
- frexp (1)
- gamma (1)
- include (3)
-
install
_ extend _ commands (1) - irb (1)
-
irb
/ ext / math-mode (1) - ldexp (1)
- lgamma (1)
- log (5)
- log! (2)
- log10 (1)
- log2 (1)
- math? (1)
-
math
_ mode (1) -
math
_ mode= (1) -
max
_ by (4) -
module
_ function (1) - phase (3)
- polar (2)
- printf (2)
- round (1)
- rsqrt (1)
-
ruby 1
. 6 feature (1) -
ruby 1
. 9 feature (1) - sin (2)
- sinh (1)
- sqrt (3)
- tan (1)
- tanh (1)
- メソッド呼び出し(super・ブロック付き・yield) (1)
検索結果
先頭5件
-
Math
:: E -> Float (117340.0) -
自然対数の底
自然対数の底
//emlist[例][ruby]{
p Math::E
# => 2.718281828
//} -
Math
. # ldexp(x , exp) -> Float (81637.0) -
実数 x に 2 の exp 乗をかけた数を返します。
実数 x に 2 の exp 乗をかけた数を返します。
@param x 実数
@param exp 整数。小数点以下切捨て。
@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。
@raise RangeError 引数のどちらかに実数以外の数値を指定した場合に発生します。
//emlist[例][ruby]{
fraction, exponent = Math.frexp(1234)
Math.ldexp(fraction, exponent) # => 1234.0
//} -
Math
. # exp(x) -> Float (81409.0) -
x の指数関数(exponential)の値を返します。
x の指数関数(exponential)の値を返します。
すなわち e の x 乗の値を返します(e は自然対数の底)。
@param x 実数
@raise TypeError x に数値以外を指定した場合に発生します。
@raise RangeError x に実数以外の数値を指定した場合に発生します。
//emlist[例][ruby]{
Math.exp(0) # => 1.0
Math.exp(1) # => 2.718281828459045
Math.exp(1.5) # => 4.4816890703380645
//}
@see ... -
Math
. # erf(x) -> Float (81337.0) -
x の誤差関数(error function)の値を返します。
x の誤差関数(error function)の値を返します。
@param x 実数
@raise TypeError x に数値以外を指定した場合に発生します。
@raise RangeError x に実数以外の数値を指定した場合に発生します。
//emlist[例][ruby]{
Math.erf(0) # => 0.0
//}
@see Math.#erfc -
Math
. # erfc(x) -> Float (81337.0) -
x の相補誤差関数(complementary error function)の値を返します。
x の相補誤差関数(complementary error function)の値を返します。
@param x 実数
@raise TypeError x に数値以外を指定した場合に発生します。
@raise RangeError x に実数以外の数値を指定した場合に発生します。
//emlist[例][ruby]{
Math.erfc(0) # => 1.0
//}
@see Math.#erf -
Math
. # frexp(x) -> [Float , Integer] (81319.0) -
実数 x の仮数部と指数部の配列を返します。
実数 x の仮数部と指数部の配列を返します。
@param x 実数
@raise TypeError x に数値以外を指定した場合に発生します。
@raise RangeError x に実数以外の数値を指定した場合に発生します。
//emlist[例][ruby]{
fraction, exponent = Math.frexp(1234) # => [0.6025390625, 11]
fraction * 2**exponent # => 1234.0
//} -
BigMath
. # E(prec) -> BigDecimal (63478.0) -
自然対数の底 e を prec で指定した精度で計算します。
自然対数の底 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
//} -
Math
. # lgamma(x) -> [Float , Integer] (63355.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 -
Math
. # sqrt(a) -> Numeric (63319.0) -
@todo
@todo
a の正の平方根を返します。
a が Complex の時は、Complex を返します。
a が負の時は、a を正にして、その平方根を Complex の虚数部に入れて返します。
それ以外は、Math.rsqrt の結果を返します。 -
Math
. # rsqrt(a) -> Numeric (63301.0) -
@todo
@todo
複素数を考慮しないので、負の数や Complex をあたえないでください。
a が Float の時は、Float を返します。
それ以外の時、平方根が有理数であれば、Rational または Integer を返します。
無理数であれば、Float を返します。 -
Math
. # log(x) -> Float (63217.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 (63217.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
. # gamma(x) -> Float (63199.0) -
x のガンマ関数の値を返します。
x のガンマ関数の値を返します。
@param x 実数
@raise TypeError xに数値以外を指定した場合に発生します。
@raise Math::DomainError x に負の整数、もしくは -∞ を渡した場合に発生します。
@raise RangeError xに実数以外の数値を指定した場合に発生します。
//emlist[例][ruby]{
def fact(n) (1..n).inject(1) {|r,i| r*i } end
1.upto(26) {|i| p [i, Math.gamma(i), fact(i-1)] }
# => [1, 1.0, 1... -
IRB
:: Context # math _ mode=(opt) (36742.0) -
math_mode を有効にするかどうかを指定します。
math_mode を有効にするかどうかを指定します。
.irbrc ファイル中で IRB.conf[:MATH_MODE] を設定する事でも同様の事が行え
ます。
mathn ライブラリを include するため、math_mode を有効にした後は
無効にする事ができません。
@param opt math_mode を有効にする場合に true を指定します。
@raise IRB::CantReturnToNormalMode 既に math_mode の状態で opt に
false か nil を指定... -
IRB
:: Context # math _ mode -> bool (36673.0) -
math_mode が有効かどうかを返します。
math_mode が有効かどうかを返します。
@see IRB::Context#math_mode=, IRB::Context#inspect? -
IRB
:: ContextExtender . install _ extend _ commands -> object (36319.0) -
定義済みの拡張を読み込みます。
定義済みの拡張を読み込みます。
IRB::Context で以下のメソッドが利用できるようになります。
* eval_history=
* use_tracer=
* math_mode=
* use_loader=
* save_history=
irb/extend-command が require された時にライブラリ内部で自動的
に実行されます。
@see IRB::ContextExtender.def_extend_command -
bigdecimal
/ math (36055.0) -
BigDecimalを使った数学的な機能を提供します。
BigDecimalを使った数学的な機能を提供します。
以下の計算が行えます。
* sqrt(x, prec)
* sin (x, prec)
* cos (x, prec)
* atan(x, prec)
* PI (prec)
* E (prec)
引数:
: x
計算対象の BigDecimal オブジェクト。
: prec
計算結果の精度。
//emlist[例][ruby]{
require "bigdecimal"
require "bigdecimal/math"
include BigMath
a = BigDecimal((PI(... -
irb
/ ext / math-mode (36037.0) -
irb コマンドで実行結果を Object#inspect の代わりに Object#to_s した結果で表示するためのサブライブラリです。
irb コマンドで実行結果を Object#inspect の代わりに
Object#to_s した結果で表示するためのサブライブラリです。
conf.math_mode か IRB.conf[:MATH_MODE] に true を設定する事で使用できま
す。ただし、inspect_mode が設定されていた場合は inspect_mode が優先され
ます。
このライブラリで定義されているメソッドはユーザが直接使用するものではあ
りません。 -
CMath
. # exp(z) -> Float | Complex (27805.0) -
z の指数関数(Math::E の z 乗)の値を返します。
z の指数関数(Math::E の z 乗)の値を返します。
@param z Math::E を z 乗する数を指定します。
@raise TypeError z に数値以外を指定した場合に発生します。
//emlist[例][ruby]{
require "cmath"
CMath.exp(Complex(0, 0))# => (1.0+0.0i)
CMath.exp(Complex(0, Math::PI)) # => (-1.0+1.2246063538223773e-16i)
CMath.exp(Complex(0, Math::PI / 2.0)) # => (6.1230... -
CMath
. # exp!(x) -> Float (27625.0) -
実数 x の指数関数(Math::E の x 乗)の値を返します。 Math.#exp のエイリアスです。
実数 x の指数関数(Math::E の x 乗)の値を返します。
Math.#exp のエイリアスです。
@param x Math::E を x 乗する数を実数で指定します。
@raise TypeError x に数値以外を指定した場合に発生します。
@raise RangeError x に実数以外の数値を指定した場合に発生します。
//emlist[例][ruby]{
require "cmath"
CMath.exp!(0) # => 1
CMath.exp!(0.5) # => Math.sqrt(Math::E)
CMath.exp!(1) # => Math::E
... -
IRB
:: Context # math? -> bool (27373.0) -
math_mode が有効かどうかを返します。
math_mode が有効かどうかを返します。
@see IRB::Context#math_mode=, IRB::Context#inspect? -
BigMath
. # exp(x , prec) -> BigDecimal (27337.0) -
x の指数関数を prec で指定した精度で計算します。
x の指数関数を prec で指定した精度で計算します。
x に正の無限大を指定した場合は正の無限大を返します。負の無限大を指定し
た場合には 0 を返します。NaN を指定した場合には NaNを返します。
@param x 計算対象の数値を Integer、BigDecimal、
Float、Rationalオブジェクトのいずれかで指定します。
@param prec 計算結果の精度を指定します。
@raise ArgumentError x に Integer、BigDecimal、
Float、Rational以外のオ... -
Math
:: DomainError (27049.0) -
数学関数(module Math のモジュール関数)で与えた引数が定義域 に含まれていない場合に発生します。
数学関数(module Math のモジュール関数)で与えた引数が定義域
に含まれていない場合に発生します。 -
Numeric
# angle -> 0 | Math :: PI (18658.0) -
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
//emlist[例][ruby]{
1.arg # => 0
-1.arg # => 3.141592653589793
//}
Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。
@see Complex#arg -
Numeric
# phase -> 0 | Math :: PI (18658.0) -
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
//emlist[例][ruby]{
1.arg # => 0
-1.arg # => 3.141592653589793
//}
Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。
@see Complex#arg -
Float
# angle -> 0 | Float (18349.0) -
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
//emlist[例][ruby]{
1.arg # => 0
-1.arg # => 3.141592653589793
//}
ただし、自身が NaN(Not a number) であった場合は、NaN を返します。 -
Float
# phase -> 0 | Float (18349.0) -
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
//emlist[例][ruby]{
1.arg # => 0
-1.arg # => 3.141592653589793
//}
ただし、自身が NaN(Not a number) であった場合は、NaN を返します。 -
ruby 1
. 6 feature (18343.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
ruby 1.6 feature
ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン
になります。
((<stable-snapshot|URL:ftp://ftp.netlab.co.jp/pub/lang/ruby/stable-snapshot.tar.gz>)) は、日々更新される安定版の最新ソースです。
== 1.6.8 (2002-12-24) -> stable-snapshot
: 2003-01-22: errno
EAGAIN と EWOULDBLOCK が同じ値のシステムで、EWOULDBLOCK がなくなっ
ていま... -
Module
# include(*mod) -> self (18337.0) -
モジュール mod をインクルードします。
モジュール mod をインクルードします。
@param mod Module のインスタンス( Enumerable など)を指定します。
@raise ArgumentError 継承関係が循環してしまうような include を行った場合に発生します。
//emlist[例][ruby]{
module M
end
module M2
include M
end
module M
include M2
end
//}
実行結果:
-:3:in `append_features': cyclic include detected (ArgumentError)
... -
Complex
# angle -> Float (18319.0) -
自身の偏角を[-π,π]の範囲で返します。
自身の偏角を[-π,π]の範囲で返します。
//emlist[例][ruby]{
Complex.polar(3, Math::PI/2).arg # => 1.5707963267948966
//}
非正の実軸付近での挙動に注意してください。以下の例のように虚部が 0.0 と
-0.0 では値が変わります。
//emlist[例][ruby]{
Complex(-1, 0).arg #=> 3.141592653589793
Complex(-1, -0).arg #=> 3.141592653589793
Complex(-1... -
Complex
# phase -> Float (18319.0) -
自身の偏角を[-π,π]の範囲で返します。
自身の偏角を[-π,π]の範囲で返します。
//emlist[例][ruby]{
Complex.polar(3, Math::PI/2).arg # => 1.5707963267948966
//}
非正の実軸付近での挙動に注意してください。以下の例のように虚部が 0.0 と
-0.0 では値が変わります。
//emlist[例][ruby]{
Complex(-1, 0).arg #=> 3.141592653589793
Complex(-1, -0).arg #=> 3.141592653589793
Complex(-1... -
Module
# module _ function(*name) -> self (18319.0) -
メソッドをモジュール関数にします。
メソッドをモジュール関数にします。
引数が与えられた時には、
引数で指定されたメソッドをモジュール関数にします。
引数なしのときは今後このモジュール定義文内で
新しく定義されるメソッドをすべてモジュール関数にします。
モジュール関数とは、プライベートメソッドであると同時に
モジュールの特異メソッドでもあるようなメソッドです。
例えば Math モジュールのメソッドはすべてモジュール関数です。
self を返します。
@param name String または Symbol を 0 個以上指定します。
=== 注意
module_function はメソッドに「モジュール関数」とい... -
Rake
:: FileList # include(*filenames) -> self (18319.0) -
ファイル名のパターンを追加リストに登録します。 配列が与えられた場合、配列の各要素が追加されます。
ファイル名のパターンを追加リストに登録します。
配列が与えられた場合、配列の各要素が追加されます。
@param filenames 追加するファイル名のパターンを指定します。
例:
file_list.include("*.java", "*.cfg")
file_list.include %w( math.c lib.h *.o ) -
Range
# bsearch -> Enumerator (18319.0) -
ブロックの評価結果で範囲内の各要素の大小判定を行い、条件を満たす値を二 分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を 返します。
ブロックの評価結果で範囲内の各要素の大小判定を行い、条件を満たす値を二
分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を
返します。
本メソッドはブロックを評価した結果により以下のいずれかのモードで動作し
ます。
* find-minimum モード
* find-any モード
find-minimum モード(特に理由がない限りはこのモードを使う方がいいでしょ
う)では、条件判定の結果を以下のようにする必要があります。
* 求める値がブロックパラメータの値か前の要素の場合: true を返す
* 求める値がブロックパラメータより後の要... -
Range
# bsearch {|obj| . . . } -> object | nil (18319.0) -
ブロックの評価結果で範囲内の各要素の大小判定を行い、条件を満たす値を二 分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を 返します。
ブロックの評価結果で範囲内の各要素の大小判定を行い、条件を満たす値を二
分探索(計算量は O(log n))で検索します。要素が見つからない場合は nil を
返します。
本メソッドはブロックを評価した結果により以下のいずれかのモードで動作し
ます。
* find-minimum モード
* find-any モード
find-minimum モード(特に理由がない限りはこのモードを使う方がいいでしょ
う)では、条件判定の結果を以下のようにする必要があります。
* 求める値がブロックパラメータの値か前の要素の場合: true を返す
* 求める値がブロックパラメータより後の要... -
Vector
# angle _ with(v) -> Float (18319.0) -
v と self がなす角度を返します。
v と self がなす角度を返します。
//emlist[例][ruby]{
require 'matrix'
Vector[1, 0].angle_with(Vector[0, 1]) # => Math::PI/2
//}
@param v このベクトルと self とがなす角度を計算します
@raise ZeroVectorError self もしくは v のどちらかが零ベクトルである場合に
発生します
@raise ExceptionForMatrix::ErrDimensionMismatch v と self の
ベクトルの次元が異なる場合に発... -
main
. include(*modules) -> self (18319.0) -
引数 modules で指定したモジュールを後ろから順番に Object にインクルードします。
引数 modules で指定したモジュールを後ろから順番に Object にインクルードします。
@param modules Module のインスタンス( Enumerable など)を指定します。
@raise ArgumentError 継承関係が循環してしまうような include を行った場
合に発生します。
//emlist[例:][ruby]{
include Math
hypot(3, 4) # => 5.0
//}
@see Module#include -
bigdecimal (18199.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 では正確な値を得る事がで... -
ruby 1
. 9 feature (18145.0) -
ruby 1.9 feature ruby version 1.9.0 は開発版です。 以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。 1.9.1 以降は安定版です。 バグ修正がメインになります。
ruby 1.9 feature
ruby version 1.9.0 は開発版です。
以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。
1.9.1 以降は安定版です。
バグ修正がメインになります。
記号について(特に重要なものは大文字(主観))
* カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ライブラリ
* [parser]: 文法の変更
* [regexp]: 正規表現の機能拡張
* [marshal]: Marshal ファイルのフォーマット変更
* ... -
NEWS for Ruby 2
. 2 . 0 (18073.0) -
NEWS for Ruby 2.2.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.2.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
== 2.1.0 以降の変更
=== 言語仕様の変更
* nil/true/false
* nil/true/false はフリーズされました 8923
* Hash リテラル
* 後ろにコロンのあるシンボルをキーにしたと... -
メソッド呼び出し(super・ブロック付き・yield) (18019.0)
-
メソッド呼び出し(super・ブロック付き・yield) * super * block * yield * block_arg * numbered_parameters * call_method
メソッド呼び出し(super・ブロック付き・yield)
* super
* block
* yield
* block_arg
* numbered_parameters
* call_method
//emlist[例][ruby]{
foo.bar()
foo.bar
bar()
print "hello world\n"
print
Class.new
Class::new
//}
文法:
[式 `.'] 識別子 [`(' [[`*'] 式] ... [`&' 式] `)']
[式 `::'] 識別子 [`(' ... -
BigMath
. # PI(prec) -> BigDecimal (9673.0) -
円周率を prec で指定した精度で計算します。
円周率を prec で指定した精度で計算します。
@param prec 計算結果の精度。
@raise ArgumentError prec に 0 以下が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::PI(2) #=> 0.31415926535897932384671233672993238432e1
puts BigMath::PI(5) #=> 0.31415926535897932384627534923029509162e1
puts BigMath::PI(10) ... -
BigMath
. # log(x , prec) -> BigDecimal (9655.0) -
x の自然対数を prec で指定した精度で計算します。
x の自然対数を prec で指定した精度で計算します。
x に無限大を指定した場合は無限大を返します。NaN を指定した場合には NaN
を返します。
@param x 計算対象の数値を Integer、Float、
Rational、BigDecimal オブジェクトのいずれかで指定
します。
@param prec 計算結果の精度を指定します。
@raise Math::DomainError x に 0 以下の数値か Complex オブジェクト
が指定された場合に発生します。
@rais... -
Numeric
# polar -> [Numeric , Numeric] (9649.0) -
自身の絶対値と偏角を配列にして返します。正の数なら [self, 0]、負の数な ら [-self, Math::PI] を返します。
自身の絶対値と偏角を配列にして返します。正の数なら [self, 0]、負の数な
ら [-self, Math::PI] を返します。
//emlist[例][ruby]{
1.0.polar # => [1.0, 0]
2.0.polar # => [2.0, 0]
-1.0.polar # => [1.0, 3.141592653589793]
-2.0.polar # => [2.0, 3.141592653589793]
//}
Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。
@see Complex#polar -
BigMath
. # atan(x , prec) -> BigDecimal (9637.0) -
x の逆正接関数を prec で指定した精度で計算します。単位はラジアンです。 x に無限大や NaN を指定した場合には NaN を返します。
x の逆正接関数を prec で指定した精度で計算します。単位はラジアンです。
x に無限大や NaN を指定した場合には NaN を返します。
@param x 計算対象の BigDecimal オブジェクト。単位はラジアン。
@param prec 計算結果の精度。
@raise ArgumentError x の絶対値が1以上の場合に発生します。
@raise ArgumentError prec に 0 以下が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::atan(BigD... -
BigMath
. # cos(x , prec) -> BigDecimal (9637.0) -
x の余弦関数を prec で指定した精度で計算します。単位はラジアンです。x に無限大や NaN を指定した場合には NaN を返します。
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.877582561890372716116... -
BigMath
. # sin(x , prec) -> BigDecimal (9637.0) -
x の正弦関数を prec で指定した精度で計算します。単位はラジアンです。x に無限大や NaN を指定した場合には NaN を返します。
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.479425538604203000273... -
BigMath
. # sqrt(x , prec) -> BigDecimal (9637.0) -
x の平方根を prec で指定した精度で計算します。
x の平方根を prec で指定した精度で計算します。
@param x 平方根を求める数。
@param prec 計算結果の精度。
@raise FloatDomainError x に 0 以下、もしくは NaN が指定された場合に発生します。
@raise ArgumentError prec に 0 未満が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::sqrt(BigDecimal('2'), 10) #=> 0.1414213562373095048666666667e... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (9433.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
1.6.8から1.8.0への変更点(まとめ)
* ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>))
* ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>))
* ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))... -
Enumerable
# max _ by -> Enumerator (9373.0) -
各要素を順番にブロックに渡して実行し、 その評価結果を <=> で比較して、 最大であった値に対応する元の要素、もしくは最大の n 要素が降順で入った配列を返します。
各要素を順番にブロックに渡して実行し、
その評価結果を <=> で比較して、
最大であった値に対応する元の要素、もしくは最大の n 要素が降順で入った配列を返します。
引数を指定しない形式では要素が存在しなければ nil を返します。
引数を指定する形式では、空の配列を返します。
該当する要素が複数存在する場合、どの要素を返すかは不定です。
Enumerable#max と Enumerable#max_by の
違いは Enumerable#sort と Enumerable#sort_by の違いと同じです。
ブロックを省略した場合は Enumerator を返します。
@par... -
Enumerable
# max _ by {|item| . . . } -> object | nil (9373.0) -
各要素を順番にブロックに渡して実行し、 その評価結果を <=> で比較して、 最大であった値に対応する元の要素、もしくは最大の n 要素が降順で入った配列を返します。
各要素を順番にブロックに渡して実行し、
その評価結果を <=> で比較して、
最大であった値に対応する元の要素、もしくは最大の n 要素が降順で入った配列を返します。
引数を指定しない形式では要素が存在しなければ nil を返します。
引数を指定する形式では、空の配列を返します。
該当する要素が複数存在する場合、どの要素を返すかは不定です。
Enumerable#max と Enumerable#max_by の
違いは Enumerable#sort と Enumerable#sort_by の違いと同じです。
ブロックを省略した場合は Enumerator を返します。
@par... -
Enumerable
# max _ by(n) -> Enumerator (9373.0) -
各要素を順番にブロックに渡して実行し、 その評価結果を <=> で比較して、 最大であった値に対応する元の要素、もしくは最大の n 要素が降順で入った配列を返します。
各要素を順番にブロックに渡して実行し、
その評価結果を <=> で比較して、
最大であった値に対応する元の要素、もしくは最大の n 要素が降順で入った配列を返します。
引数を指定しない形式では要素が存在しなければ nil を返します。
引数を指定する形式では、空の配列を返します。
該当する要素が複数存在する場合、どの要素を返すかは不定です。
Enumerable#max と Enumerable#max_by の
違いは Enumerable#sort と Enumerable#sort_by の違いと同じです。
ブロックを省略した場合は Enumerator を返します。
@par... -
Enumerable
# max _ by(n) {|item| . . . } -> Array (9373.0) -
各要素を順番にブロックに渡して実行し、 その評価結果を <=> で比較して、 最大であった値に対応する元の要素、もしくは最大の n 要素が降順で入った配列を返します。
各要素を順番にブロックに渡して実行し、
その評価結果を <=> で比較して、
最大であった値に対応する元の要素、もしくは最大の n 要素が降順で入った配列を返します。
引数を指定しない形式では要素が存在しなければ nil を返します。
引数を指定する形式では、空の配列を返します。
該当する要素が複数存在する場合、どの要素を返すかは不定です。
Enumerable#max と Enumerable#max_by の
違いは Enumerable#sort と Enumerable#sort_by の違いと同じです。
ブロックを省略した場合は Enumerator を返します。
@par... -
Numeric
# arg -> 0 | Math :: PI (9358.0) -
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
//emlist[例][ruby]{
1.arg # => 0
-1.arg # => 3.141592653589793
//}
Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。
@see Complex#arg -
Integer
# digits -> [Integer] (9355.0) -
base を基数として self を位取り記数法で表記した数値を配列で返します。 base を指定しない場合の基数は 10 です。
base を基数として self を位取り記数法で表記した数値を配列で返します。
base を指定しない場合の基数は 10 です。
//emlist[][ruby]{
16.digits # => [6, 1]
16.digits(16) # => [0, 1]
//}
self は非負整数でなければいけません。非負整数でない場合は、Math::DomainErrorが発生します。
//emlist[][ruby]{
-10.digits # Math::DomainError: out of domain が発生
//}
@return 位取り記数法で表した時の数... -
Integer
# digits(base) -> [Integer] (9355.0) -
base を基数として self を位取り記数法で表記した数値を配列で返します。 base を指定しない場合の基数は 10 です。
base を基数として self を位取り記数法で表記した数値を配列で返します。
base を指定しない場合の基数は 10 です。
//emlist[][ruby]{
16.digits # => [6, 1]
16.digits(16) # => [0, 1]
//}
self は非負整数でなければいけません。非負整数でない場合は、Math::DomainErrorが発生します。
//emlist[][ruby]{
-10.digits # Math::DomainError: out of domain が発生
//}
@return 位取り記数法で表した時の数... -
Complex
. polar(r , theta = 0) -> Complex (9337.0) -
絶対値が r、偏角が theta である Complex クラスのオブジェクトを生成します。
絶対値が r、偏角が theta である Complex クラスのオブジェクトを生成します。
@param r 生成する複素数の絶対値。
@param theta 生成する複素数の偏角。単位はラジアンです。省略した場合は 0 です。
//emlist[例][ruby]{
Complex.polar(2.0) # => (2.0+0.0i)
Complex.polar(2.0, 0) # => (2.0+0.0i)
Complex.polar(2.0, Math::PI) # => (-2.0+2.4492127076447545e-16i)
//... -
CMath
. # acos(z) -> Float | Complex (9301.0) -
z の逆余弦関数の値をラジアンで返します。
z の逆余弦関数の値をラジアンで返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # acosh(z) -> Float | Complex (9301.0) -
z の逆双曲線余弦関数の値を返します。
z の逆双曲線余弦関数の値を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # asin(z) -> Float | Complex (9301.0) -
z の逆正弦関数の値をラジアンで返します。
z の逆正弦関数の値をラジアンで返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # asinh(z) -> Float | Complex (9301.0) -
z の逆双曲線正弦関数の値を返します。
z の逆双曲線正弦関数の値を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # atan(z) -> Float | Complex (9301.0) -
z の逆正接関数の値をラジアンで返します。
z の逆正接関数の値をラジアンで返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # atan2(y , x) -> Float | Complex (9301.0) -
y / x の逆正接関数の値を返します。
y / x の逆正接関数の値を返します。
@param y 数値
@param x 数値
@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。 -
CMath
. # atanh(z) -> Float | Complex (9301.0) -
z の逆双曲線正接関数の値を返します。
z の逆双曲線正接関数の値を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # cbrt(z) -> Float | Complex (9301.0) -
z の立方根の内、主値を返します。
z の立方根の内、主値を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。
//emlist[例][ruby]{
require "cmath"
CMath.cbrt(-8)# => (1.0000000000000002+1.7320508075688772i)
//}
@see Complex#** -
CMath
. # cos(z) -> Float | Complex (9301.0) -
z の余弦関数の値を返します。
z の余弦関数の値を返します。
@param z 数値(ラジアンで与えます)
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # cosh(z) -> Float | Complex (9301.0) -
z の双曲線余弦関数の値を返します。
z の双曲線余弦関数の値を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # log(z) -> Float | Complex (9301.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 (9301.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
. # log10(z) -> Float | Complex (9301.0) -
z の常用対数を返します。
z の常用対数を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # log2(z) -> Float | Complex (9301.0) -
2 を底とする z の対数 (binary logarithm) を返します。
2 を底とする z の対数 (binary logarithm) を返します。
@param z 真数を指定します。
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # sin(z) -> Float | Complex (9301.0) -
z の正弦関数の値を返します。
z の正弦関数の値を返します。
@param z 数値(ラジアンで与えます)
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # sinh(z) -> Float | Complex (9301.0) -
z の双曲線正弦関数の値を返します。
z の双曲線正弦関数の値を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # sqrt(z) -> Float | Complex (9301.0) -
z の平方根を返します。
z の平方根を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。
//emlist[例][ruby]{
require "cmath"
CMath.sqrt(-1) # => (0+1.0i)
CMath.sqrt(1)# => 1.0
CMath.sqrt(Complex(0, 8))# => (2.0+2.0i)
//} -
CMath
. # tan(z) -> Float | Complex (9301.0) -
z の正接関数の値を返します。
z の正接関数の値を返します。
@param z 数値(ラジアンで与えます)
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # tanh(z) -> Float | Complex (9301.0) -
z の双曲線正接関数の値を返します。
z の双曲線正接関数の値を返します。
@param z 数値
@raise TypeError z に数値以外を指定した場合に発生します。 -
CMath
. # log!(x) -> Float (9139.0) -
実数 x の対数を返します。Math.#log のエイリアスです。
実数 x の対数を返します。Math.#log のエイリアスです。
@param x 真数を正の実数で指定します。
@param b 底を指定します。省略した場合は自然対数を計算します。
@raise Math::DomainError x が負の数である場合に発生します。
@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。
@raise RangeError 引数のどちらかに実数以外の数値を指定した場合に発生します。
//emlist[例][ruby]{
require "cmath"
CMath.log!(Math::E) # => 1.0... -
CMath
. # log!(x , b) -> Float (9139.0) -
実数 x の対数を返します。Math.#log のエイリアスです。
実数 x の対数を返します。Math.#log のエイリアスです。
@param x 真数を正の実数で指定します。
@param b 底を指定します。省略した場合は自然対数を計算します。
@raise Math::DomainError x が負の数である場合に発生します。
@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。
@raise RangeError 引数のどちらかに実数以外の数値を指定した場合に発生します。
//emlist[例][ruby]{
require "cmath"
CMath.log!(Math::E) # => 1.0... -
Float
# arg -> 0 | Float (9049.0) -
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
//emlist[例][ruby]{
1.arg # => 0
-1.arg # => 3.141592653589793
//}
ただし、自身が NaN(Not a number) であった場合は、NaN を返します。 -
Complex
# arg -> Float (9019.0) -
自身の偏角を[-π,π]の範囲で返します。
自身の偏角を[-π,π]の範囲で返します。
//emlist[例][ruby]{
Complex.polar(3, Math::PI/2).arg # => 1.5707963267948966
//}
非正の実軸付近での挙動に注意してください。以下の例のように虚部が 0.0 と
-0.0 では値が変わります。
//emlist[例][ruby]{
Complex(-1, 0).arg #=> 3.141592653589793
Complex(-1, -0).arg #=> 3.141592653589793
Complex(-1... -
Kernel
. # printf(format , *arg) -> nil (9019.0) -
C 言語の printf と同じように、format に従い引数を文字列に変 換して port に出力します。
C 言語の printf と同じように、format に従い引数を文字列に変
換して port に出力します。
port を省略した場合は標準出力 $stdout に出力します。
引数を 1 つも指定しなければ何もしません。
Ruby における format 文字列の拡張については
Kernel.#sprintfの項を参照してください。
@param port 出力先になるIO のサブクラスのインスタンスです。
@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@raise ArgumentError port を指定したのに ... -
Kernel
. # printf(port , format , *arg) -> nil (9019.0) -
C 言語の printf と同じように、format に従い引数を文字列に変 換して port に出力します。
C 言語の printf と同じように、format に従い引数を文字列に変
換して port に出力します。
port を省略した場合は標準出力 $stdout に出力します。
引数を 1 つも指定しなければ何もしません。
Ruby における format 文字列の拡張については
Kernel.#sprintfの項を参照してください。
@param port 出力先になるIO のサブクラスのインスタンスです。
@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@raise ArgumentError port を指定したのに ... -
Ruby用語集 (463.0)
-
Ruby用語集 A B C D E F G I J M N O R S Y
Ruby用語集
A B C D E F G I J M N O R S Y
a ka sa ta na ha ma ya ra wa
=== 記号・数字
: %記法
: % notation
「%」記号で始まる多種多様なリテラル記法の総称。
参照:d:spec/literal#percent
: 0 オリジン
: zero-based
番号が 0 から始まること。
例えば、
Array や Vector、Matrix などの要素の番号、
String における文字の位置、
といったものは 0 オリジンである。
: 1 オリジン
: one-based
... -
Float
# round(ndigits = 0) -> Integer | Float (319.0) -
自身ともっとも近い整数もしくは実数を返します。
自身ともっとも近い整数もしくは実数を返します。
中央値 0.5, -0.5 はそれぞれ 1,-1 に切り上げされます。
いわゆる四捨五入ですが、偶数丸めではありません。
@param ndigits 丸める位を指定します。
ndigitsが0ならば、小数点以下を四捨五入し、整数を返します。
ndigitsが0より大きいならば、小数点以下の指定された位で四捨五入されます。
ndigitsが0より小さいならば、小数点以上の指定された位で四捨五入されます。
@return 指定された引数に応じて、整数もしくは実数を返します。
ndigi... -
irb (145.0)
-
irb は Interactive Ruby の略です。 irb を使うと、Ruby の式を標準入力から簡単に入力・実行することができます。
irb は Interactive Ruby の略です。
irb を使うと、Ruby の式を標準入力から簡単に入力・実行することができます。
=== irb の使い方
Ruby さえ知っていれば irb を使うのは簡単です。
irb コマンドを実行すると、以下のようなプロンプトが表れます。
$ irb
irb(main):001:0>
あとは Ruby の式を入力するだけで、その式が実行され、結果が表示されます。
irb(main):001:0> 1+2
3
irb(main):002:0> class Foo
irb(main):003:1> def f... -
Marshal フォーマット (127.0)
-
Marshal フォーマット フォーマットバージョン 4.8 を元に記述しています。
Marshal フォーマット
フォーマットバージョン 4.8 を元に記述しています。
=== nil, true, false
それぞれ、'0', 'T', 'F' になります。
//emlist[][ruby]{
p Marshal.dump(nil).unpack1("x2 a*") # => "0"
p Marshal.dump(true).unpack1("x2 a*") # => "T"
p Marshal.dump(false).unpack1("x2 a*") # => "F"
//}
Ruby 2.1 以前では、インスタンス変数を設定しても dump されません...