e$B8=;[email protected]$Ge(B rational.rb e$B$He(B complex.rb
e$B$r;D$7$F$$$k$N$O!"$=$l$,[email protected]$+$ie(B
e$B$G$9!#[email protected]$r=E;k$9$kN)>[email protected][email protected]$^$9!#$7$+$7!"9%$^e(B
e$B$7$/[email protected]$b0z$-7Q$$$G$7$^$&$+$b$7$l$^$;$s!#e(B
e$B$=$N5$$K$J$l$P!"e(Brational.rbe$B!"e(Bcomplex.rb
e$B$N$_$J$i$:!“e(Bmathn.rb e$B$b4]$4$He(B
e$B:o=|$9$k$3$H$b2DG=$G$7$g$&!#2>Dj$NOC$G$9$,!”$3$l$r9M$($k$3$H$K$h$C$F!"e(B
e$B2?$,LdBj$J$N$+H=$k$+$b$7$l$^$;$s!#e(B
e$B$^$:!“e(Brational.rb
e$B$K$O!”$b$O$dBg$7$?$b$N$O;D$C$F$$$^$;$s!#Hf3SE*0UL#$,e(B
e$B$"$k$N$O!"e(Bgcd (e$B5Z$Se(B lcm e$B$He(B gcdlcm) e$B$G$9!#e(B
gcd e$B$,$"$k$N$O!“e(Brational
e$B$G$D$+$&0Y$G$9!#@PDM$5$s$O!“MxMQ<T$,$D$+$C$Fe(B
e$B$b9=$o$J$$!”$H9M$($?$H;W$$$^$9$,!“4pK\E*$K$Oe(B rational
e$B$G$D$+$&0Y$KB8:_e(B
e$B$7$^$9!#$=$l0J30$K!“e(Bgcd e$B$,e(B rational.rb
e$B$K$”$kM}M3$O$J$$$G$7$g$&!#8+$?e(B
e$B$H$3$m!”$3$Ne(B gcd e$B$O$”$^$j4X?4$r=8$a$F$O$$$J$$$h$&$G$9!#e(B
e$B$I$l$/$i$$4X?4$,$J$$$+$H$$$($P!"$3$Ne(B gcd
e$B$,OCBj$K$J$k$N$,!"$b$C$Q$ie(B
rational e$B$NB.EY2~A1$K4X$9$k$K>l9g$G!"$=$N0Y$K$+$J$jAa$$;~4|$+$ie(B
gcd [email protected](B
e$B$1$G$bAH$9~$$K$7$?$i$I$&$+$H$$$&OC$OEY!9Ds0F$5$l$F$-$?$K$b4X$o$i$:!"e(B
e$B:#F|$^$GJ|CV$5$l$F$$$k$/$i$$$G$9!#e(B
gcd e$B$K$D$$$F$O!"<N$F$k$+!"e(Bruby
e$BK\BN$K5[<}$9$k$+$I$A$i$+$K$J$j$^$9e(B (e$B%ae(B
e$B%=%C%I7A<0$+!"4X?t7A<0$+$N$$$E$l$+$Ge(B)e$B!#e(B
complex.rb e$B$G$O!“e(BMath
e$B4X?t$NCV$-49$($,$”$j$^$9!#$3$l$O$?$V$s<N$F$i$l$Je(B
e$B$$$H;W$$$^$9!#e(B
e$BK\BN$K5[<}$9$k>l9g$$$/$D$+$NA*Br$,$"$k$H;W$$$^$9!#$?$H$($P!“e(Bpython
e$B$Je(B
e$B$I$G$O!“e(Bmath e$B$NB>$K!“e(Bcmath e$B$,$”$j$^$9!#e(Bruby
e$B$G$b!”$=$N$h$&$J7A$G<h$j$3e(B
e$B$`$3$H$,2DG=$G$7$g$&!#[email protected]!”$3$N>l9g!“e(Bsqrt(aRational)
e$B$r$I$3$G0z$-<u$1e(B
e$B$k$N$+!”$H$$$C$?$3$H$,LdBj$K$J$k$+$b$7$l$^$;$s!#$^$?!"e(Bruby
e$B$NBg%/%i%9e(B
e$B<g5Ae(B (e$B%/%i%9$G$O$J$$$,e(B)
[email protected]$^$J$$$+$b$7$l$^$;$s!#e(B
e$B$"$k$$$O!"e(B(e$B:#8=:_e(B complex.rb [email protected]$H$-$N$h$&$Ke(B)
Math e$B$N4X?t$rCVe(B
e$B$-49$($F!“J#AG?t0h$K$^$G3HBg$9$k$3$H$b2DG=$G$9!#B.EY$O<c43CY$/$J$k$+$be(B
e$B$7$l$^$;$s!#e(Bruby e$B$Ne(B Math e$B%b%8%e!<%k$O!“e(BTime
e$B$HF1MM$Ke(B ruby e$B$N$*$1$ke(B
Unix/C
e$B<g5A$N8=$l$H;W$o$l$k$N$G!”[email protected]}@-$r0];}$7$h$&$H$9$k$H!”$3$Ne(B
e$B<j$O$D$+$($J$$$+$b$7$l$^$;$s!#e(B
mathn e$B$G$O!“e(B** e$B$He(B sqrt
e$B$r:FDj5A$7$F$”$j!"@PDM$5$s<+$i$$$o$l$k$h$&$K!"e(B
e$B$J$+$J$+J#;($=$&$G$9$,!“e(B** e$B$OJ#AG?tBP1~!“e(Bsqrt e$B$Oe(B
complex.rb e$B$G$b:FDj5Ae(B
e$B$7$F$$$^$9$,!“e(Bmathn
e$B$G$OM-M}?t$K$bBP1~$9$k!”$H$$$&$3$H$G$”$k$H;W$$$^$9!#e(B
** e$B$He(B sqrt e$B$OB8:_0U5A$,HyL/$9$.$k$N$G!”$$$E$l$K$7$F$be(B
mathn.rb e$B$+$i$Oe(B
e$BE15n$9$k$7$+$J$$$H;W$$$^$9!#e(B
mathn.rb e$B$G$O!“1i;;;Re(B / e$B$NCV$-49$($,$”$j$^$9$,!"$3$N5!G=$re(B
ruby e$BK\BN$Ke(B
e$BAH$_9~$`$3$H$b2DG=$G$O$J$$$+$H;W$$$^$9!#e(Bruby e$B$K!"%*%W%7%g%se(B
m e$B$rDI2C$7!"e(B
ruby -m e$B$H$7$?>l9g$O!"e(Bmathn
e$B$N$h$&$K1i;;;R$rCV$-49$($^$9!#$3$l$O<BAu$Ne(B
e$BLL$G$bET9g$,$$$$$+$b$7$l$^$;$se(B (e$B8=CJ3,$G$Oe(B matrix
e$B$N$3$H$OD|$a$J$1$l$Pe(B
e$B$J$j$^$;$se(B)e$B!#e(B
mathn.rb e$B$G$Oe(B Prime
e$B$b$"$j$^$9$,!"$3$l$O<N$F$k$+!"$I$3$+$K0$9e(B
(lib/prime.rb e$B$J$Ie(B) [email protected]$H;W$$$^$9!#e(B