methods=Fixnum/i.=2f.mathn,Bignum/i.=2f.mathn,Rational/i.=2a=2a.mathn,Math/m.sqrt.mathn,Math/m.rsqrt.mathn
sublibraries=
requires=prime,matrix,rational,complex
classes=
is_sublibrary=false

[[c:Rational]]  [[c:Complex]] ꥷ쥹ѤǤ褦ˤ饤֥Ǥͥ饤֥εư򥰥Хѹޤ

 * νڤʤ硢 [[c:Rational]] ֥Ȥ֤褦ˤʤޤ
 * ʣǿͭα黻̤¿˼ޤ硢 [[c:Float]] ֥Ȥ [[c:Integer]] ֥Ȥ֤ޤ
 * [[c:Math]] ⥸塼οشؿȽ򡢼¿Τߤʣǿؤȳ礷ޤ

=== Ѷ

Integer  Float  Rational ϸ̵ɽǤϰϤ礭ᡢ
ͤα黻ˤ Rational 򥷡쥹ѤȤޤ
 mathn 饤֥ϡƿͥ饹δ֤δط
礦 Bignum  Fixnum ȤΤ褦ʼưŪѴطˤޤ

==== ͭѴ

ŪˤϡRational Υ󥹥󥹤ʤСϼưŪ Integer
(Fixnum ޤ Bignum)Ȥʤꡢޤ/η̡
ڤʤ Rational ֤褦ˤʤޤԤϡΥ᥽åɡ/פ(.div)Ǥʤ(.quo)֤褦ˤʤ롢ȤȤ̣ޤ

:
  1/2                #=> 0
  2 * Rational(1,2)  #=> Rational(1,1)

  require 'mathn'
  1/2                #=> Rational(1,2)  
  2 * Rational(1,2)  #=> 1 (Fixnum)

==== ¿ʣǿѴ

Ʊͤˤ Complex Υ󥹥󥹤ε 0 ʤСȤƴޤޤƤ Rational, Float, ޤ Integer ֥ȤѴޤ

ر黻衦ʣǿ˳礹Τǡ mathn Ѥʤˤϰϥ顼㳰ȯƤ褦ʱ黻 Complex ֥Ȥ֤⤢ޤ

:
 Complex(0,-1)**2  #=> Complex(-1,0)
 Math.sqrt(-1)     #=> NaN
 
 require 'mathn'
 Complex(0,-1)**2  #=> -1
 Math.sqrt(-1)     #=> Complex(0,1)
 

=== Ѿ
ʤεưϡХ˱ƶͿޤ
Ĥޤꡢ(Ruby ǽ񤫤줿)ѥ饤֥ require Ƥ硢
饤֥ư⡢Τ褦ѹ뤳Ȥˤʤޤ
¾ͤν񤤤饤֥Ȥϡղ

դˡѥ饤֥κԤϡ [[lib:mathn]]  require
ǽαդƽ񤤤ƲпڤȻפޤ
ƱΤտޤʤ [[m:Integer#/]] ǤϤʤ [[m:Integer#div]] ѤɤǤ礦

  * [[ruby-list:1174]]

=== Prime

饹 [[c:Prime]] Ruby 1.8ޤǤ [[lib:mathn]] Ƥޤ
ߤϥ饤֥ [[lib:prime]] ˰ưƤޤߴΤ mathn ɤ߹ȼưŪ prime  [[m:Kernel.#require]] ޤ
