Ruby 1.9.3 リファレンスマニュアル > ライブラリ一覧 > primeライブラリ > Primeクラス > prime_division

instance method Prime#prime_division

prime_division(value, generator= Prime::Generator23.new) -> [[Integer, Integer]][permalink][rdoc]

与えられた整数を素因数分解します。

[PARAM] value:
素因数分解する任意の整数を指定します。
[PARAM] generator:
素数生成器のインスタンスを指定します。
[RETURN]
素因数とその指数から成るペアを要素とする配列です。つまり、戻り値の各要素は2要素の配列 [n,e] であり、それぞれの内部配列の第1要素 n は value の素因数、第2要素は n**e が value を割り切る最大の自然数 e です。
[EXCEPTION] ZeroDivisionError:
与えられた数値がゼロである場合に発生します。

例:

Prime.prime_division(12) #=> [[2,2], [3,1]]
Prime.prime_division(10) #=> [[2,1], [5,1]]

[SEE_ALSO] Prime::EratosthenesGenerator, Prime::TrialDivisionGenerator, Prime::Generator23