Complex$BAH$_9~$_(B

|e$BKM$H$7$F$O!"e(B/ e$B1i;;;R$N?6Iq$$$K$D$$$FA08~$-$K8!F$$7$F$[$7$$$G$9!#e(B

e$B$4$a$s$J$5$$!#$3$3$G8@$&!VA08~$-$K8!F$!W$H$O6qBNE*$K$I$N$h$&e(B
e$B$K$9$k$3$H$K$D$$$F8!F$$9$k$H$$$&$3$H$G$9$+!#$b$N$o$+$j$,$o$ke(B
e$B$/$F?=$7Lu$J$$$G$9$,!“J|CV$7$F$*$/$N$O$”$s$^$jNI$/$J$$$h$&$Je(B
e$B5$$,$7$?$b$N$G!#e(B

ruby
e$B$G$O!“N>JU$,@0?t$G$”$k>l9g$H!"$=$&$G$J$$>l9g$N0c$$$,$"$j$^$9$,!“e(B
e$B$3$l$O$J$s$H$+$7$?$[$&$,$$$$!”$H;W$C$F$$$^$9!#e(B

e$B<B:]$K$O!"e(Bruby e$B%W%m%0%i%^!<$O!"e(B/ e$B$r$=$NETEYe(B div
e$B$de(B quo e$B$de(B fdiv e$B$N$h$&e(B
e$B$JFCDj$N0UL#$G$D$+$*$&$H$7$F$$$k$O$:$G$9!#$G$b!"8e$G8+$F$b$=$N0U?^$O$he(B
e$B$/$o$+$j$^$;$se(B
(e$BIbF0>.?tE@?t$N%j%F%i%k$,4^$a$l$F$$$k$J$I$9$l$PJLe(B)e$B!#e(B

ruby e$B$N$h$&$J8@8l$G$O!“Am>NE*$J4X?t$J$I$,=q$-$d$9$$$O$:$G$9$,!“e(B/
e$B$r$De(B
e$B$+$C$?;~E@$G$”$d$7$/$J$C$F$-$^$9!#0z?t$Ke(B 2 e$B$G$be(B 2.0
e$B$G$bM?$($F$I$A$i$Ge(B
e$B$b@5$7$$7k2L$,F@$i$l$k4X?t$r4JC1$K=q$1$?$O$:$N>l9g$G$b!”<B:]$K$O!"$I$Ae(B
e$B$i$+$G$7$+@5$7$/F0$+$J$$!"$H$$$&$3$H$,$h$/$"$j$^$9!#e(B

e$B$3$N;v$K5$IU$$$F$$$k?M$G$5$(!"<B:]$K$O!"e(B/
e$B$r$D$+$C$F$7$^$&$+$i$G$9!#KMe(B
e$B$O5$$,$D$/$H!“8e$GI,MW$JJ,$@$1D>$7$?$j$9$k$3$H$b$”$j$^$9$,!"e(Bruby
e$B$NB?e(B
e$B$/$N%3!<%I$O$3$N$h$&$J@x:_E*$JLdBj$rJz$($F$$$k$N$@$H;W$$$^$9!#e(B

e$B:G=i$N$&$A$O!"!V@0?te(B/e$B@0?te(B=e$B@0?t!W$K$b0U5A$,$"$k$h$&$J5$$,$7$F$$$^$7$?$,!"e(B
e$B:#$K$7$F$_$l$P!"e(B/ e$B$r$3$N$h$&$K$7$?$N$O!"e(Bruby
e$B%W%m%0%i%^!<$r4V0c$C$?J}e(B
e$B8~$KM6F3$7$F$$$?$H;W$$$^$9!#e(B

e$BB<ED$G$9!%e(B

2008/3/31 Tadayoshi F. [email protected]:

e$B$H$3$m$G!"$b$7$+$7$F$U$J$P$5$s$O!"e(BMath.sqrt(4) e$B$O!“e(BInteger e$B$Ne(B 2 e$B$K$7$?e(B
e$B$$$H9M$($F$$$k$N$G$7$g$&$+!)e(BRationale$B!“e(BComplex e$BAH$_9~$_8e!”%G%U%)%k%H$G!“e(B
mathn e$B$re(B require e$B$7$J$$>uBV$G!”%*%W%7%g%s$J$7$G!”$NOC$G$9!#e(B

e$B2>$K8=;~E@$G$G$-$J$/$F$b!“$=$&=PMh$k2DG=@-$r$D$^$J$$$h$&$K$7$?$$!”$H$$e(B
e$B$&$3$H$G$9$M!#86$5$s$N0F$G$O!“4pK\IbF0>.?tE@?t$N$_!”$*$^$1$GJ#AG?t!"$He(B
e$B$$$&$3$H$J$s$@$H;W$$$^$9$,!#e(B

e$B?t3X$G$ON_>h:,$Oe(B R->Re$B!$e(BR->Ce$B!$e(BC->C
e$B$N$I$l$+$GDj5A$5$l$F$$$k$H;W$C$F$$$?e(B
e$B$N$G$9$,!$$=$&$G$J$$>l9g$,$"$k$s$G$7$g$&$+!)!Je(BRe$B$O<B?t!$#C$OJ#AG?t$N=89g$G$9!Ke(B
e$B;d$O!$e(BMath.sqrt
e$B$O0z?t$,@5?t$N$H$-7k2L$,<B?t!$0z?t$,Ii?t$N$H$-!$$b$7$/$Oe(B
e$BJ#AG?t$N$H$-7k2L$,J#AG?t$H$$$&;EMM$GNI$$$H;W$C$F$$$^$9!%e(B

Math.sqrt(4) e$B$re(B 2.0 e$B$G$J$/e(B 2
e$B$K$7$?$$$J$i!$$=$N$H$-$OL@<(E*$Ke(B to_i e$B$9$k$H$$$&e(B
e$B$3$H$G$O$$$1$J$$$N$G$7$g$&$+!)e(B

e$B$H$$$&$N$O!$e(Bsqrt
e$B$NMQES$r9M$($?$H$-$K!$7k2L$H$7$F<B?t$b$7$/$OJ#AG?t$r4|BT$9$ke(B
e$B>l9g$NJ}$,05E]E*$KB?$$$@$m$&$+$i$G$9!%e(Bsqrt
e$B$N7k2L$,@0?t$K$J$k;v$r4|BT$9$k?M$Oe(B
e$B$I$l$@$1$$$k$s$G$7$g$&!)e(B

e$B@.@%$G$9!#e(B

Kenta M. wrote:

Complex e$B$,e(B complex.rb e$B$+$iAH9~$_$K$J$C$?$H$-$K!$$=$Ne(B C e$B>e$G$NI=8=$,5$$K$J$k$N$O!$e(B
e$B3HD%%b%8%e!<%k$r:n$k?M4V$N?4M}$H$7$F4V0c$C$F$O$$$J$$$H;W$$$^$9!%e(B

e$B$(!"$=$l4V0c$C$F$^$;$s$+!)e(B
Complx e$B$,e(B Rational e$B%Y!<%9$+e(B Float e$B$^$?$Oe(B real
e$B%Y!<%9$+$H$$$&$N$Oe(B C e$B>e$NOC$G$J$/!“e(B
Ruby e$B$N;EMM$K4X$o$kLdBj$G$O$”$j$^$;$s$+!#e(B

Ruby e$B$N;EMM$NLdBj$J$N$Ke(B C
e$B>e$NI=8=$+$iF~$k$N$O=g=x$,5U$G$O$J$$$G$7$g$&$+!#e(B
e$BB.EY$N$?$a$K;EMM$r6J$2$k$H$$$&$N$b8@8l$K$h$C$F$O$"$j$J$N$G$7$g$&$,!"e(B
Ruby e$B$O$I$A$i$+$H$$$&$He(B
e$B;EMM$N$?$a$KB.EY$r5>@7$K$9$k8@8l$@$H;W$C$F$$$^$9!#e(B

Ruby e$B$G?tCM7W;;$r$9$k>l9g$O3HD%%b%8%e!<%k$r:n$kI,MW$,$"$k$N$G!$B.EY$@$1$G$J$/!$e(B
e$B$=$NB-[H$K$J$k$h$&$J5!G=$O$J$s$H$+$7$F>/$J$/$J$l$PNI$$$H;W$C$F$$$^$9!%e(B

e$B$=$N<gD%$O$"$kDxEY6Z$,DL$C$F$$$k$N$G$9$,!"$=$3$^$G$9$k$N$J$i$P!"e(B
e$BB.EY$r5>@7$K$7$F$$$ke(B Ruby e$BK\BN$Ne(B Complex
e$B$OHr$1$k$Y$-$G$7$g$&!#e(B
SSE e$B$J$j$r6n;H$7$?e(B e$BFH<+$+$D9bB.$Je(B ComplexFloat
e$B3HD%%i%$%V%i%j$re(B
e$BMQ0U$7$?J}$,%9%^!<%H$K46$8$^$9!#e(B

e$BB<ED$G$9!%e(B

2008/3/31 Tadayoshi F. [email protected]:

e$B3HD%%b%8%e!<%k$r:n$j0W$$;EMM1>!9$O=i$a$FJ9$$$?$h$&$K;W$$$^$9$,!#e(B

e$BEDCf>;9($5$s$H$N$d$j$H$j$G!$e(Breal e$B$He(B imag e$B$re(B VALUE
e$B$G;}$D$+!$e(B
C e$B$Ne(B POD e$B7?$G;}$D$+!$e(BC99 e$B$Ne(B complex
e$B$G;}$D$+$J$I$NOCBj$,$“$j$^$7$?$h$M!%e(B
e$B$”$l$,3HD%%b%8%e!<%k$r:n$j0W$$;EMM$NOC$@$H9M$($F$$$^$9!%e(B

e$B2J3X5;=Q7W;;$K:GE,2=$G$-$J$$M}M3$r@bL@$7$F$$$^$9!#L[$C$F$$$F:GE,2=$5$le(B
e$B$k$o$1$8$c$J$$$N$G!"%j%=!<%9$,MW$j$^$9!#$^$?!“2J3X5;=Q7W;;$K:GE,2=$9$ke(B
e$B0Y$K$O!”<YKb$K$J$k$b$N$rGS=|$7$J$1$l$P$J$j$^$;$s!#B?MM$J%3!<%G%#%s%0%7e(B
e$B%9%F%`$N%5%]!<%H$J$I$O<YKb$K$J$k$+$b$7$l$^$;$s!#e(B

e$B40c$$$7$J$$$G$$$?$@$-$?$$$N$G$9$,!$;d$Oe(B Ruby
e$B$r2J3X5;=Q7W;;$Ke(B
e$BFC2=$5$;$h$&e(B*
e$B$H$O0l8@$b8@$C$F$$$^$;$s!%e(B

ruby e$B$r2J3X5;=Q7W;;$K:GE,2=$9$k$H$$$&$N$O!“FCDj$NMQES$KFC2=$9$k!”$H$$e(B
e$B$&$3$H$G$9$h$M!#8=<BE*$K$O!“$J$K$+$r@Z$j<N$F$kI,MW$,$”$k$H;W$$$^$9!#e(B

e$B;d$O!$e(BRuby
e$B$r!V2J3X5;=Q7W;;$Ke(Be$B;H$&$?$a$Ke(Be$B:GE,2=$9$k!W$H=q$-$^$7$?$,!$e(B
e$B!V2J3X5;=Q7W;;$K:GE,2=$9$k!W$H$O=q$$$F$$$J$$$N$G$9!%e(B
e$BMW$9$k$K!$:#$h$j$b4JC1$K$J$l$P$$$$$H$+!$3HD%%b%8%e!<%k:n$j$,3Z$K$J$l$P$$$$$H$+!$e(B
e$B$=$&$$$&N`$$$N$3$H$G$"$C$F!$e(BRuby e$B$re(B MATLAB
e$B$K$7$h$&$J$s$F;W$C$F$^$;$s$h!%e(B

e$B$=$l$H$b!"B<ED$5$s$N$$$&:GE,2=$H$$$&$N$O!“C1$Ke(B ruby e$B$N?tCM%/%i%9$N1i;;e(B
e$B$,=PMh$k$@$1B.$/$J$k$h$&4hD%$k!”$H$$$&$3$H$J$s$G$7$g$&$+!#e(B

e$B$=$l$@$1$G$O$“$j$^$;$s$,!$$=$l$b4^$_$^$9!%CY$$$h$j$OB.$$$[$&$,NI$$$G$9!%e(B
e$B@hF|e(B Bignum e$B$,e(B FFT
e$B$G9bB.2=$5$l$^$7$?$1$I!$$”$N$h$&$J2~A1$OAG@2$7$$$G$9!%e(B

Ruby
e$B$G?tCM7W;;$r$9$k>l9g$O3HD%%b%8%e!<%k$r:n$kI,MW$,$"$k$N$G!$B.EY$@$1$G$J$/!$e(B
e$B$=$NB-[H$K$J$k$h$&$J5!G=$O$J$s$H$+$7$F>/$J$/$J$l$PNI$$$H;W$C$F$$$^$9!%e(B
Complex e$B$,e(B complex.rb e$B$+$iAH9~$_$K$J$C$?$H$-$K!$$=$Ne(B C
e$B>e$G$NI=8=$,5$$K$J$k$N$O!$e(B
e$B3HD%%b%8%e!<%k$r:n$k?M4V$N?4M}$H$7$F4V0c$C$F$O$$$J$$$H;W$$$^$9!%e(B

e$B3HD%%b%8%e!<%k$r:n$j0W$$;EMM1>!9$O=i$a$FJ9$$$?$h$&$K;W$$$^$9$,!#e(B

e$BEDCf>;9($5$s$H$N$d$j$H$j$G!$e(Breal e$B$He(B imag e$B$re(B VALUE e$B$G;}$D$+!$e(B
C e$B$Ne(B POD e$B7?$G;}$D$+!$e(BC99 e$B$Ne(B complex e$B$G;}$D$+$J$I$NOCBj$,$"$j$^$7$?$h$M!%e(B
e$B$"$l$,3HD%%b%8%e!<%k$r:n$j0W$$;EMM$NOC$@$H9M$($F$$$^$9!%e(B

e$B$I$3$+$i$,!“EDCf$5$s$NOC$N1dD9$J$N$+$o$+$i$J$$$N$G$9$h!#e(B
e$B$=$&$@$m$&$H;W$C$FEz$($k$H!”$=$s$J$3$H$O8@$C$F$J$$$H$$$o$l$k$7!#e(B

e$B2J3X5;=Q7W;;$K:GE,2=$G$-$J$$M}M3$r@bL@$7$F$$$^$9!#L[$C$F$$$F:GE,2=$5$le(B
e$B$k$o$1$8$c$J$$$N$G!"%j%=!<%9$,MW$j$^$9!#$^$?!“2J3X5;=Q7W;;$K:GE,2=$9$ke(B
e$B0Y$K$O!”<YKb$K$J$k$b$N$rGS=|$7$J$1$l$P$J$j$^$;$s!#B?MM$J%3!<%G%#%s%0%7e(B
e$B%9%F%`$N%5%]!<%H$J$I$O<YKb$K$J$k$+$b$7$l$^$;$s!#e(B

e$B40c$$$7$J$$$G$$$?$@$-$?$$$N$G$9$,!$;d$Oe(B Ruby e$B$r2J3X5;=Q7W;;$Ke(Be$BFC2=$5$;$h$&e(B*
e$B$H$O0l8@$b8@$C$F$$$^$;$s!%e(B

e$B$=$&$G$9$+!#$o$6$o$62J3X5;=Q7W;;8@8l$N8e$K$D$E$1$F!"$=$l$K8~$1$F:GE,2=e(B
e$B$H$$$&$N$G!"$=$N$h$&$K$7$+<h$l$^$;$s$G$7$?!#e(B

ruby e$B$r2J3X5;=Q7W;;$K:GE,2=$9$k$H$$$&$N$O!“FCDj$NMQES$KFC2=$9$k!”$H$$e(B
e$B$&$3$H$G$9$h$M!#8=<BE*$K$O!"$J$K$+$r@Z$j<N$F$kI,MW$,$"$k$H;W$$$^$9!#e(B

e$B;d$O!$e(BRuby e$B$r!V2J3X5;=Q7W;;$Ke(Be$B;H$&$?$a$Ke(Be$B:GE,2=$9$k!W$H=q$-$^$7$?$,!$e(B
e$B!V2J3X5;=Q7W;;$K:GE,2=$9$k!W$H$O=q$$$F$$$J$$$N$G$9!%e(B

e$B0c$$$,$o$+$i$J$$$N$G$9$,!#e(B

Ruby e$B$G?tCM7W;;$r$9$k>l9g$O3HD%%b%8%e!<%k$r:n$kI,MW$,$"$k$N$G!$B.EY$@$1$G$J$/!$e(B
e$B$=$NB-[H$K$J$k$h$&$J5!G=$O$J$s$H$+$7$F>/$J$/$J$l$PNI$$$H;W$C$F$$$^$9!%e(B
Complex e$B$,e(B complex.rb e$B$+$iAH9~$_$K$J$C$?$H$-$K!$$=$Ne(B C e$B>e$G$NI=8=$,5$$K$J$k$N$O!$e(B
e$B3HD%%b%8%e!<%k$r:n$k?M4V$N?4M}$H$7$F4V0c$C$F$O$$$J$$$H;W$$$^$9!%e(B

e$B:n$j$d$9$/$J$C$F$k$N$O$$$$$G$7$g$&$,!"$=$l$,:GM%@h$G$b$J$$$7!":#2s$NAHe(B
e$B$9~$$,$D$+$$Fq$$$H$$$&$3$H$b$J$$$H;W$$$^$9!#e(B

Math.sqrt(4) e$B$re(B 2.0 e$B$G$J$/e(B 2 e$B$K$7$?$$$J$i!$$=$N$H$-$OL@<(E*$Ke(B to_i e$B$9$k$H$$$&e(B
e$B$3$H$G$O$$$1$J$$$N$G$7$g$&$+!)e(B

Math.sqrt(Rational(1,4)) #=> Rational(1,2)

e$B$H$7$F!"e(B to_i e$B$7$?$ie(B 0 e$B$K$J$j$^$9$1$I!#e(B

e$B$H$$$&$N$O!$e(Bsqrt e$B$NMQES$r9M$($?$H$-$K!$7k2L$H$7$F<B?t$b$7$/$OJ#AG?t$r4|BT$9$ke(B
e$B>l9g$NJ}$,05E]E*$KB?$$$@$m$&$+$i$G$9!%e(Bsqrt e$B$N7k2L$,@0?t$K$J$k;v$r4|BT$9$k?M$Oe(B
e$B$I$l$@$1$$$k$s$G$7$g$&!)e(B

e$B8=;~E@$G=PMh$J$/$F$b$$$$$H$$$C$F$$$k$o$1$G$9!#KM$,5$$K$7$F$$$k$N$O!“e(B
sqrt
e$B$,%%V%8%’%/%H;X8~$G$b$J$1$l$PAm>NE$G$b$J$$!”$H$$$&$3$H$rG’$a$ke(B
e$B$N$+$I$&$+$G$9!#e(B

e$B4|BT$9$k?M$H$$$($P!“e(Bruby
e$B$G2J3X5;=Q7W;;$X$N1~MQ$r4|BT$9$k?M$O$I$l$@$1e(B
e$B$$$k$N$G$7$g$&!”$H$$$&OC$K$J$j$^$9$,!#e(B

Math.sqrte$B$,8=>u%%V%8%’%/%H;X8~$G$b$J$1$l$PAm>NE$G$b$J$$$Ne(B
e$B$O;v<B$G$9!#$G$b!"8D?ME*$K$Oe(BMathe$B%b%8%e!<%k$Oe(Blibme$B$N%i%C%Q!<$Je(B
e$B$N$Ge(BFloate$B$GJD$8$k$Y$-$G$O$J$$$+$H$$$&9M$($G$9!#e(B

Complexe$B$r4^$`$b$N$OJL%b%8%e!<%k$K$9$Y$-$G$O$J$$$+$J$"!#e(B

e$B$=$3$K94$j$,$"$k$N$G$"$l$P!"$=$&$9$k$7$+$J$$$G$9$M!#$@$H$9$k$H!"e(BCMath
e$B$H$+e(B Complex::Math e$B$H$+$G$9$+$M!#e(B

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:34209] Re: Complexe$BAH$_9~$_e(B”
on Tue, 1 Apr 2008 22:02:09 +0900, Tadayoshi F. [email protected]
writes:

|e$B8=;~E@$G=PMh$J$/$F$b$$$$$H$$$C$F$$$k$o$1$G$9!#KM$,5$$K$7$F$$$k$N$O!“e(B
|sqrt e$B$,%%V%8%'%/%H;X8~$G$b$J$1$l$PAm>NE$G$b$J$$!”$H$$$&$3$H$rG’$a$ke(B
|e$B$N$+$I$&$+$G$9!#e(B

Math.sqrte$B$,8=>u%%V%8%'%/%H;X8~$G$b$J$1$l$PAm>NE$G$b$J$$$Ne(B
e$B$O;v<B$G$9!#$G$b!"8D?ME*$K$Oe(BMathe$B%b%8%e!<%k$Oe(Blibme$B$N%i%C%Q!<$Je(B
e$B$N$Ge(BFloate$B$GJD$8$k$Y$-$G$O$J$$$+$H$$$&9M$($G$9!#e(B

Complexe$B$r4^$`$b$N$OJL%b%8%e!<%k$K$9$Y$-$G$O$J$$$+$J$"!#e(B

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:34211] Re: Complexe$BAH$_9~$_e(B”
on Tue, 1 Apr 2008 23:06:11 +0900, Tadayoshi F. [email protected]
writes:

|> Complexe$B$r4^$`$b$N$OJL%b%8%e!<%k$K$9$Y$-$G$O$J$$$+$J$“!#e(B
|
|e$B$=$3$K94$j$,$”$k$N$G$“$l$P!”$=$&$9$k$7$+$J$$$G$9$M!#$@$H$9$k$H!"e(BCMath
|e$B$H$+e(B Complex::Math e$B$H$+$G$9$+$M!#e(B

Math.sqrte$B$,J#AG?t$rJV$9$H$3$s$J$K$&$l$7$$$H$$$&<B:]$NNc$rJ9e(B
e$B$/$^$G$OJ]<iE*$K9M$($^$9!#;d<+?H$,J#AG?t$r;H$C$?$3$H$,$J$$$se(B
e$B$G!":#$^$G$Ne(BMath.sqrte$B$,Ii$N?t$KBP$7$FJ#AG?t$rJV$9$3$H$,e(B(e$B=>Mhe(B
e$B$N%1!<%9$G%(%i!<H/8+$,CY$l$k$3$H0J>e$Ne(B)e$B%a%j%C%H$r8+$$$@$;$Fe(B
e$B$$$J$$$s$G$9!#e(B

require ‘cmath’
require ‘complex/math’

e$B$N$$$:$l$K$9$k$N$,$h$$$+$OJ#AG?t$r;H$&?M$N<qL#$K$*G$$;$7$^$9!#e(B
e$BH=CG4p=`$H$7$F$O!“e(Bcmathe$B$G==J,DL$8$k$N$G$”$l$PC;$$J}!#[#Kf$5e(B
e$B$,;D$k$h$&$G$“$l$PD9$/$FL@3N$JJ}$H$$$&$N$,$”$k$H;W$$$^$9!#e(B

e$B;v>p$,$o$+$i$J$$$J$,$i$be(B

  • e$BC;$$e(B
  • Pythone$B$G$b;H$o$l$F$$$ke(B

e$B$H$$$&M}M3$Ge(Bcmathe$B$K0lI<!#e(B

e$BKNIt$G$9!#e(B

Kenta M. e$B$5$s$O=q$-$^$7$?e(B:

e$B$H$$$&$N$O!$e(Bsqrt e$B$NMQES$r9M$($?$H$-$K!$7k2L$H$7$F<B?t$b$7$/$OJ#AG?t$r4|BT$9$ke(B
e$B>l9g$NJ}$,05E]E*$KB?$$$@$m$&$+$i$G$9!%e(Bsqrt e$B$N7k2L$,@0?t$K$J$k;v$r4|BT$9$k?M$Oe(B
e$B$I$l$@$1$$$k$s$G$7$g$&!)e(B

e$B$3$3$K$$$^$9!#e(B

e$B;d$N@lLgNN0he(B(e$B%0%i%U%"%k%4%j%:%`e(B)e$B$G$O@5J}BP>N9TNs$r$h$/07$$$^$9$,!"$=$NCfe(B
e$B$G>e;03Q$"$k$$$O2<;03QItJ,$N$_$,=q$+$l$?%U%!%$%k$rFI$_9~$s$G85$N@5J}9TNse(B
e$B$rI|85$9$k$3$H$,$h$/$"$j$^$9!#$3$N$H$-!"85$N9TNs$N%5%$%:$Oe(BFile.sizee$B$+$ie(B
e$BJ?J}:,$G5a$a$k$N$,0lHVMF0W$G$9$,!"EvA3$=$N7k2L$Oe(B(e$B9TNs$N%5%$%:$J$N$G$9$+e(B
e$B$ie(B)e$B@0?t$r4|BT$7$^$9!#e(B

e$B$^$"!“2?;v$K$b8@$($k$3$H$G$7$g$&$,!”;W$$9~$_$G!V$=$s$J$3$H$9$kE[$!$$$M!<e(B
e$B$h!W$H$+;W$C$F$k$H!"0F30$$$k$b$s$G$9!#e(B

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:34203] Re: Complexe$BAH$_9~$_e(B”
on Tue, 1 Apr 2008 20:53:34 +0900, Tadayoshi F. [email protected]
writes:

|ruby e$B$G$O!“N>JU$,@0?t$G$”$k>l9g$H!“$=$&$G$J$$>l9g$N0c$$$,$”$j$^$9$,!“e(B
|e$B$3$l$O$J$s$H$+$7$?$[$&$,$$$$!”$H;W$C$F$$$^$9!#e(B

e$B$G$O!"$I$N$h$&$K!V$J$s$H$+$9$k!W$+9M$($^$7$g$&!#e(B

|e$B<B:]$K$O!“e(Bruby e$B%W%m%0%i%^!<$O!“e(B/ e$B$r$=$NETEYe(B div e$B$de(B quo e$B$de(B fdiv e$B$N$h$&e(B
|e$B$JFCDj$N0UL#$G$D$+$$&$H$7$F$$$k$O$:$G$9!#$G$b!"8e$G8+$F$b$=$N0U?^$O$he(B
|e$B$/$o$+$j$^$;$se(B (e$BIbF0>.?tE@?t$N%j%F%i%k$,4^$a$l$F$$$k$J$I$9$l$PJLe(B)e$B!#e(B
|
|ruby e$B$N$h$&$J8@8l$G$O!"Am>NE
$J4X?t$J$I$,=q$-$d$9$$$O$:$G$9$,!“e(B/ e$B$r$De(B
|e$B$+$C$?;~E@$G$”$d$7$/$J$C$F$-$^$9!#0z?t$Ke(B 2 e$B$G$be(B 2.0 e$B$G$bM?$($F$I$A$i$Ge(B
|e$B$b@5$7$$7k2L$,F@$i$l$k4X?t$r4JC1$K=q$1$?$O$:$N>l9g$G$b!”<B:]$K$O!”$I$Ae(B
|e$B$i$+$G$7$+@5$7$/F0$+$J$$!“$H$$$&$3$H$,$h$/$”$j$^$9!#e(B
|
|e$B$3$N;v$K5$IU$$$F$$$k?M$G$5$(!"<B:]$K$O!"e(B/ e$B$r$D$+$C$F$7$^$&$+$i$G$9!#KMe(B
|e$B$O5$$,$D$/$H!“8e$GI,MW$JJ,$@$1D>$7$?$j$9$k$3$H$b$”$j$^$9$,!"e(Bruby e$B$NB?e(B
|e$B$/$N%3!<%I$O$3$N$h$&$J@x:_E*$JLdBj$rJz$($F$$$k$N$@$H;W$$$^$9!#e(B

e$B$"$kDxEY!"F10U$7$^$9!#e(B

|e$B:G=i$N$&$A$O!“!V@0?te(B/e$B@0?te(B=e$B@0?t!W$K$b0U5A$,$”$k$h$&$J5$$,$7$F$$$^$7$?$,!"e(B
|e$B:#$K$7$F$_$l$P!"e(B/ e$B$r$3$N$h$&$K$7$?$N$O!"e(Bruby e$B%W%m%0%i%^!<$r4V0c$C$?J}e(B
|e$B8~$KM6F3$7$F$$$?$H;W$$$^$9!#e(B

e$B$U$`!#$G$O!"e(B/ e$B$N$U$k$^$$$re(B

  • idive$B$HF1$8e(B
  • fdive$B$HF1$8e(B
  • rdive$B$HF1$8e(B
  • e$B$=$NB>$N2?$+e(B

e$B$N$$$:$l$K$9$k$H!“!V@5$7$$J}8~$KM6F3$9$k!W$3$H$K$J$k$H;W$$$^e(B
e$B$9$+!)e(B e$B$I$l$K7h$a$F$bITK~$,$”$k?M$O$$$k$H;W$$$^$9$,!"$?$H$(e(B
e$B$P!V0lHVAm>NE*$J4X?t$,=q$-$d$9$$!W$H$$$&4QE@$G9M$($?>l9g$O$Ie(B
e$B$&$G$7$g$&!#e(B

                            e$B$^$D$b$He(B e$B$f$-$R$me(B /:|)

e$B86$G$9!#e(B

Tadayoshi F. e$B$5$s$O=q$-$^$7$?e(B:

e$B$k$K$O!“e(B/ e$B$N$[$&$rJQ99$9$kI,MW$,$”$j$^$9$M!#e(BComplex e$B$K8B$i$:!"$9$G$K0Je(B
e$BA0$+$i$"$k$3$H$G$9$h$M!#e(B

e$B;d$O!"!Ve(B/
e$B$N$[$&$rJQ99$9$k!W;v$r9M$($F$$$^$;$s!#$^$?!“e(BComplex e$B$b8=>u$Ne(B
e$B$^$^$G$h$$!”$H9M$($F$$$^$9!#$=$l$rA0Ds$K!"e(BComplexFloat(e$B2>e(B)
e$B$N%a%j%C%H$Ne(B
e$B@bL@$r$7$^$7$?!#e(B

e$B<c43$N=$@5$N8e!“e(Bcomplex.rb e$B$K$”$ke(B Complex e$B$bAH$9~$$K$9$ke(B

e$B:#$Ne(B trunk e$B$K$"$ke(B Complex e$B$N$I$N$"$?$j$,ITK~$G$9$+e(B?

e$B$$$(!"ITK~$O$J$$$G$9!#$?$@!“9MN8$N8e;EMM$NJQ99$KH<$&=$@5$,$”$k$+$H;W$Ce(B
e$B$?$N$G$9!#e(B

e$B$H$3$m$G!"$b$7$+$7$F$U$J$P$5$s$O!"e(BMath.sqrt(4) e$B$O!“e(BInteger e$B$Ne(B 2 e$B$K$7$?e(B
e$B$$$H9M$($F$$$k$N$G$7$g$&$+!)e(BRationale$B!“e(BComplex e$BAH$_9~$_8e!”%G%U%)%k%H$G!“e(B
mathn e$B$re(B require e$B$7$J$$>uBV$G!”%*%W%7%g%s$J$7$G!”$NOC$G$9!#e(B

e$B2>$K8=;~E@$G$G$-$J$/$F$b!"$=$&=PMh$k2DG=@-$r$D$^$J$$$h$&$K$7$?$$!"$H$$e(B
e$B$&$3$H$G$9$M!#86$5$s$N0F$G$O!“4pK\IbF0>.?tE@?t$N$_!”$*$^$1$GJ#AG?t!"$He(B
e$B$$$&$3$H$J$s$@$H;W$$$^$9$,!#e(B

e$B;d$O!"!V@0?te(B / e$B@0?te(B = e$B@0?t!W$H$$$&e(B /
e$B$NDj5A$rJQ$($J$$$H2>Dj$7$F0U8+$r8@$Ce(B
e$B$F$$$^$9!#$U$J$P$5$s$O!"$=$l<+BN$rJQ99$7$?$$$H0U?^$,$"$k$N$G!";~!90U8+e(B
e$B$,?)$$0c$&$N$@$H;W$$$^$9!#!V@0?te(B / e$B@0?te(B =
e$B@0?t!W$G$"$k8B$je(B Math.sqrt(4)
e$B$O!“e(BInteger e$B$Ne(B 2
e$B$H$9$k$o$1$K$O$$$+$J$$!”$3$NE@$K$D$$$F$O!"$U$J$P$5$s$be(B
e$BF10U$7$^$9$h$M!#0c$&$N$+$J!#e(B

Math e$B$N%a%=%C%I$K$D$$$F$O!"JL$N4QE@$+$i7hCe$,$D$-$=$&$G$9$,!#e(B

e$B!V@0?te(B / e$B@0?te(B = e$B@0?t!W$K$D$$$F$O!"e(Bruby-list e$B$G$be(B
ruby-math e$B$G$b4{$K$+$Je(B
e$B$j5DO@$5$l!"7hCe$,$D$$$F$$$^$;$s!#$7$+$7!“e(BRational
e$B$,AH$9~$$H$J$C$?!“e(B
e$B:#!”>u67$,$+$J$jJQ$o$j$^$7$?$M!#$^$D$b$H$5$s$,!”$b$&0lEY!V@0?te(B /
e$B@0?te(B

e$B@0?t!W$D$$$F!"9M$($F$$h$&$H$$$&5$$K$J$C$F$k$h$&$J$N$G!"$I$&$J$k$+3Ze(B
e$B$7$
$G$9!#e(B

e$B$G$b!"$=$A$i$G7kO@$,=P$k$^$G$O!"!V@0?te(B / e$B@0?te(B =
e$B@0?t!W$rA0Ds$KOC$r$7$^e(B
e$B$7$g$&!#$"$?$j$^$($@$1$I!#e(B

e$BKNIt$G$9!#e(B

Shin-ichiro HARA e$B$5$s$O=q$-$^$7$?e(B:

e$B$A$g$C$HK\Bj$+$iN%$l$k$1$I!"A0$+$i$o$+$i$J$+$C$?$N$G$9$,!"e(BC e$B$Ne(B math e$B%ie(B
e$B%$%V%i%j$N;EMM$H$7$F!"e(BMath.sqrt(n ** 2).floor e$B$O!"e(Bn e$B$K$J$k$3$H$OJ]>Z$5e(B
e$B$l$F$k$s$G$9$+$Me(B(n e$B$O<+A3?te(B)e$B!#e(Bn - 1 e$B$K$J$C$?$j$7$J$$$G$9$+$M!#B?J,!"Bge(B
e$B>fIW$J$s$G$7$g$&$1$I!"L@J82=$5$l$F$k$G$7$g$&$+!#e(B

rounde$B$8$c$J$/$Fe(Bfloore$B$G$9$+e(B?e$B;EMM$G$O7h$^$C$F$J$$5$$,$7$^$9!#e(B

e$B$3$3$OOC$,$A$g$C$H$M$8$l$F$$$k$s$G$9$,!"e(Bsqrt e$B$,e(B Integer e$B$GM_$7$$?M$O$=e(B
e$B$l$J$j$K$$$k$H;W$$$^$9!#e(Bruby-math e$B$Ge(B isqrt e$B$r0l@87|L?5DO@$7$F$$$?$N$O!"e(B
e$B$=$$$&;v$G$9!#$=$$$&$$$&?M$O!“e(BMath.sqrt e$B$KIT0B$,$”$k!#$D$^$j!"4|BT$7$Fe(B
e$B$$$k?M$Oe(B Math.sqrt e$B$K4|BT$7$J$$!#e(B

e$B$"!<!"$=$&$J$s$G$9$+!#;d$O2?$i$+$NJ}K!$,Ds6!$5$l$F$l$PL>A0$K$O$"$s$^$j$3e(B
e$B$@$o$C$F$J$$$N$G!"2>$Ke(Bisqrte$B$,e(Bsqrte$B$HJL$KB8:_$9$k$J$i$=$l$G$o$j$H%O%C%T!<e(B
e$B$G$9!#e(B

e$B86$G$9!#e(B

e$B;d$N@lLgNN0he(B(e$B%0%i%U%"%k%4%j%:%`e(B)e$B$G$O@5J}BP>N9TNs$r$h$/07$$$^$9$,!"$=$NCfe(B
e$B$G>e;03Q$"$k$$$O2<;03QItJ,$N$_$,=q$+$l$?%U%!%$%k$rFI$_9~$s$G85$N@5J}9TNse(B
e$B$rI|85$9$k$3$H$,$h$/$"$j$^$9!#$3$N$H$-!"85$N9TNs$N%5%$%:$Oe(BFile.sizee$B$+$ie(B
e$BJ?J}:,$G5a$a$k$N$,0lHVMF0W$G$9$,!"EvA3$=$N7k2L$Oe(B(e$B9TNs$N%5%$%:$J$N$G$9$+e(B
e$B$ie(B)e$B@0?t$r4|BT$7$^$9!#e(B

e$B$A$g$C$HK\Bj$+$iN%$l$k$1$I!"A0$+$i$o$+$i$J$+$C$?$N$G$9$,!"e(BC
e$B$Ne(B math e$B%ie(B
e$B%$%V%i%j$N;EMM$H$7$F!"e(BMath.sqrt(n ** 2).floor e$B$O!"e(Bn
e$B$K$J$k$3$H$OJ]>Z$5e(B
e$B$l$F$k$s$G$9$+$Me(B(n e$B$O<+A3?te(B)e$B!#e(Bn - 1
e$B$K$J$C$?$j$7$J$$$G$9$+$M!#B?J,!"Bge(B
e$B>fIW$J$s$G$7$g$&$1$I!"L@J82=$5$l$F$k$G$7$g$&$+!#e(B

e$B$^$"!“2?;v$K$b8@$($k$3$H$G$7$g$&$,!”;W$$9~$_$G!V$=$s$J$3$H$9$kE[$!$$$M!<e(B
e$B$h!W$H$+;W$C$F$k$H!"0F30$$$k$b$s$G$9!#e(B

e$B$3$3$OOC$,$A$g$C$H$M$8$l$F$$$k$s$G$9$,!"e(Bsqrt e$B$,e(B Integer
e$B$GM_$7$$?M$O$=e(B
e$B$l$J$j$K$$$k$H;W$$$^$9!#e(Bruby-math e$B$Ge(B isqrt
e$B$r0l@87|L?5DO@$7$F$$$?$N$O!"e(B
e$B$=$$$&;v$G$9!#$=$$$&$$$&?M$O!“e(BMath.sqrt
e$B$KIT0B$,$”$k!#$D$^$j!"4|BT$7$Fe(B
e$B$$$k?M$Oe(B Math.sqrt e$B$K4|BT$7$J$$!#e(B

e$B86$G$9!#e(B

e$BKNIt$G$9!#e(B

Shin-ichiro HARA e$B$5$s$O=q$-$^$7$?e(B:

e$B$A$g$C$HK\Bj$+$iN%$l$k$1$I!"A0$+$i$o$+$i$J$+$C$?$N$G$9$,!"e(BC e$B$Ne(B math e$B%ie(B
e$B%$%V%i%j$N;EMM$H$7$F!"e(BMath.sqrt(n ** 2).floor e$B$O!"e(Bn e$B$K$J$k$3$H$OJ]>Z$5e(B
e$B$l$F$k$s$G$9$+$Me(B(n e$B$O<+A3?te(B)e$B!#e(Bn - 1 e$B$K$J$C$?$j$7$J$$$G$9$+$M!#B?J,!"Bge(B
e$B>fIW$J$s$G$7$g$&$1$I!"L@J82=$5$l$F$k$G$7$g$&$+!#e(B

rounde$B$8$c$J$/$Fe(Bfloore$B$G$9$+e(B?e$B;EMM$G$O7h$^$C$F$J$$5$$,$7$^$9!#e(B

e$BNc$($P!"AG?tH=Dj$re(B

def prime?(n)
2.upto Math.sqrt(n) do |i|
return false if (n % i).zero?
end
true
end

e$B$C$F=q$-$?$$!#$G$bIT0B!#e(B

2.upto Math.sqrt(n).round do |i|

e$B$8$c!"#12sM>7W$K%k!<%W$,2s$k$3$H$,$"$k$7!“Bh0l8+$?L$+$C$30-$$$G$9$h$M!#e(B
e$BKNIt$5$s$NMQES$J$i%k!<%H$NCf$OJ?J}?t$G$”$k$3$H$,$o$+$C$F$$$k$N$G!"e(B
round e$B$G$$$$$G$9$,!#e(B

rounde$B$8$c$J$/$Fe(Bfloore$B$G$9$+e(B?e$B;EMM$G$O7h$^$C$F$J$$5$$,$7$^$9!#e(B

e$B$"$"!"$d$C$Q$j7h$^$C$F$J$s$$$G$9$+!*e(B

e$B$&$G$7$g$&!#e(B
e$B0lHV$NLdBj$O!"e(B/ e$B$,0-$$0UL#$GB?5AE*$@$+$i$@$H;W$$$^$9!#e(B

e$BKM$O!"e(Bquo e$B$,$$$$$H;W$$$^$9!#e(B

e$B2?8N!"e(Bdiv e$B$,$D$+$o$l$J$$$N$+9M$($k$H!"e(B

  • / e$B$G$b4|BT$I$*$j$K$J$ke(B (e$B$h$&$K;W$($ke(B)e$B!#e(B
  • div e$B$,$D$+$$$E$i$$e(B
    (e$B%?%$%W$7$E$i$$!"8+1I$($,$o$k$$e(B)e$B!#e(B
  • div e$B$NB8:_$rCN$i$J$$!"$"$k$$$OK:$l$F$$$k!#e(B

e$B$J$I$,9M$($i$l$k$s$8$c$J$$$+$H;W$$$^$9!#KM$N>l9g$O!">e$Ne(B3e$B$DA4$F$"$F$Oe(B
e$B$^$j$^$9!#e(B

/ e$B$Oe(B div e$B$8$c$J$$!"$H$$$&$3$H$r%O%C%-%j$5$;$F!"e(Bdiv
e$B$b$D$+$$$d$9$$$h$&e(B
e$B$K$9$k$3$H$,Bg@Z$@$H;W$$$^$9!#e(B// e$B$re(B div
e$B$N0UL#$GF3F~$9$k$o$1$G$9!#e(B

e$B$3$l$O!"e(Bsmalltalk e$B$HF1$8$G$9!#e(Bpython3
e$B$bF1$8$G$9!#$^$C$?$/F1$8$3$H$r9Me(B
e$B$($F$$$k$N$+H=$j$^$;$s$,!"F1$87kO@$Km}$C$7$?$N$@$H;W$$$^$9!#e(B

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:34224] Re: Complexe$BAH$_9~$_e(B”
on Wed, 2 Apr 2008 20:55:56 +0900, Tadayoshi F. [email protected]
writes:
|
|> e$B$U$`!#$G$O!“e(B/ e$B$N$U$k$^$$$re(B
|>
|> * idive$B$HF1$8e(B
|> * fdive$B$HF1$8e(B
|> * rdive$B$HF1$8e(B
|> * e$B$=$NB>$N2?$+e(B
|>
|> e$B$N$$$:$l$K$9$k$H!”!V@5$7$$J}8~$KM6F3$9$k!W$3$H$K$J$k$H;W$$$^e(B
|> e$B$9$+!)e(B e$B$I$l$K7h$a$F$bITK~$,$“$k?M$O$$$k$H;W$$$^$9$,!”$?$H$(e(B
|> e$B$P!V0lHVAm>NE*$J4X?t$,=q$-$d$9$$!W$H$$$&4QE@$G9M$($?>l9g$O$Ie(B
|> e$B$&$G$7$g$&!#e(B
|
|e$B0lHV$NLdBj$O!"e(B/ e$B$,0-$$0UL#$GB?5AE*$@$+$i$@$H;W$$$^$9!#e(B

e$B$^$“!”$=$l$OG’$a$^$9!#e(B

|e$BKM$O!"e(Bquo e$B$,$$$$$H;W$$$^$9!#e(B

e$B!Ve(Bquoe$B$,$$$$!W$H$$$&$N$O$A$g$C$H0UL#$,$h$/$o$+$j$^$;$s$G$7$?!#e(B
/e$B1i;;;R$N5sF0$O8=:_$Ne(Bquoe$B$HF1$8$G$"$k$H$$$&Iw$K2r<a$7$^$7$?$,!"e(B
e$B@5$7$$$G$9$+!)e(B

|e$B2?8N!“e(Bdiv e$B$,$D$+$o$l$J$$$N$+9M$($k$H!“e(B
|
|* / e$B$G$b4|BT$I$$j$K$J$ke(B (e$B$h$&$K;W$($ke(B)e$B!#e(B
|
div e$B$,$D$+$$$E$i$$e(B (e$B%?%$%W$7$E$i$$!“8+1I$($,$o$k$$e(B)e$B!#e(B
|* div e$B$NB8:_$rCN$i$J$$!”$”$k$$$OK:$l$F$$$k!#e(B
|
|e$B$J$I$,9M$($i$l$k$s$8$c$J$$$+$H;W$$$^$9!#KM$N>l9g$O!”>e$Ne(B3e$B$DA4$F$“$F$Oe(B
|e$B$^$j$^$9!#e(B
|
|/ e$B$Oe(B div e$B$8$c$J$$!”$H$$$&$3$H$r%O%C%-%j$5$;$F!"e(Bdiv e$B$b$D$+$$$d$9$$$h$&e(B
|e$B$K$9$k$3$H$,Bg@Z$@$H;W$$$^$9!#e(B// e$B$re(B div e$B$N0UL#$GF3F~$9$k$o$1$G$9!#e(B
|
|e$B$3$l$O!"e(Bsmalltalk e$B$HF1$8$G$9!#e(Bpython3 e$B$bF1$8$G$9!#$^$C$?$/F1$8$3$H$r9Me(B
|e$B$($F$$$k$N$+H=$j$^$;$s$,!"F1$87kO@$Km}$C$7$?$N$@$H;W$$$^$9!#e(B

e$B3NG’$G$9$,!"$U$J$P$5$s$NDs0F$Oe(B

  • / e$B1i;;;R$re(Bquoe$B$N0UL#$K$9$ke(B(e$B$=$l$,$J$s$G$"$C$F$be(B)
  • // e$B1i;;;R$r@0?t$rJV$9=|;;$H$9$ke(B

e$B$H$$$&0UL#$G$h$$$G$9$+!)e(B

e$BM=8+$5$l$kLdBj$H$7$F$Oe(B

Smalltalke$B$de(BPythone$B$H0c$$!"e(BRubye$B$G$Oe(B//e$B$O6u$N@55,I=8=$H>WFMe(B
e$B$9$k!#e(B

/e$B$,$J$K$rJV$9$N$+e(B(e$B$^$@e(B)e$B$$$^$$$AL@3N$G$J$$!#8D?ME*$K$Oe(B
quoe$B$Oe(Brdive$B$HF1$8$G$“$k$HG’<1$7$F$$$^$9$,!“e(B/e$B$Oe(BFloate$B$G$”$ke(B
e$B$Y$-$J$N$+$J$”!#e(B

e$B$H$+$,$“$j$^$9!#$^$”!">/$7$:$D9M$($^$7$g$&!#>/$J$/$H$be(B1.9e$B$Ge(B
e$B1i;;;R$rJQ99$9$k$K$O$A$HCY$9$.$k$N$G!#e(B

                            e$B$^$D$b$He(B e$B$f$-$R$me(B /:|)

e$B;d$O!"!V@0?te(B / e$B@0?te(B = e$B@0?t!W$H$$$&e(B / e$B$NDj5A$rJQ$($J$$$H2>Dj$7$F0U8+$r8@$Ce(B
e$B$F$$$^$9!#$U$J$P$5$s$O!"$=$l<+BN$rJQ99$7$?$$$H0U?^$,$"$k$N$G!";~!90U8+e(B
e$B$,?)$$0c$&$N$@$H;W$$$^$9!#!V@0?te(B / e$B@0?te(B = e$B@0?t!W$G$"$k8B$je(B Math.sqrt(4)
e$B$O!“e(BInteger e$B$Ne(B 2 e$B$H$9$k$o$1$K$O$$$+$J$$!”$3$NE@$K$D$$$F$O!"$U$J$P$5$s$be(B
e$BF10U$7$^$9$h$M!#0c$&$N$+$J!#e(B

e$B$=$l$H$3$l$H$O!"$H$j$"$($:4X78$,$J$$$H9M$($F$$$^$9!#?<$$$H$3$m$G$O!“4Xe(B
e$B78$,$”$k$H;W$$$^$9$1$I!#e(B

e$B$^$D$b$H$5$s$,!“e(BMath e$B$Oe(B libm
e$B$@$H$$$&$3$H$G!”$3$l$O%%V%8%’%/%H;X8~$Ge(B
e$B$b$J$/Am>NE
$J$b$N$G$b$J$/$F!"$3$N$^$^$GNI$$!"$H$$$&$3$H$r8@$C$F$$$C$Fe(B
e$B$$$k$N$G!"$=$3$ONc30$@$H9M$($k$7$+$J$$$H;W$$$^$9!#e(B

|e$BKM$O!"e(Bquo e$B$,$$$$$H;W$$$^$9!#e(B

e$B!Ve(Bquoe$B$,$$$$!W$H$$$&$N$O$A$g$C$H0UL#$,$h$/$o$+$j$^$;$s$G$7$?!#e(B
/e$B1i;;;R$N5sF0$O8=:_$Ne(Bquoe$B$HF1$8$G$"$k$H$$$&Iw$K2r<a$7$^$7$?$,!"e(B
e$B@5$7$$$G$9$+!)e(B

e$B$?$V$s!"$"$C$F$^$9!#e(B/ e$B$re(B quo
e$B$N0UL#$K$9$k!"$H$$$&$3$H$G$9!#e(B

e$B3NG’$G$9$,!"$U$J$P$5$s$NDs0F$Oe(B

  • / e$B1i;;;R$re(Bquoe$B$N0UL#$K$9$ke(B(e$B$=$l$,$J$s$G$"$C$F$be(B)
  • // e$B1i;;;R$r@0?t$rJV$9=|;;$H$9$ke(B

e$B$H$$$&0UL#$G$h$$$G$9$+!)e(B

e$B$=$&$G$9!#e(B

e$BM=8+$5$l$kLdBj$H$7$F$Oe(B

  • Smalltalke$B$de(BPythone$B$H0c$$!"e(BRubye$B$G$Oe(B//e$B$O6u$N@55,I=8=$H>WFMe(B
    e$B$9$k!#e(B

  • /e$B$,$J$K$rJV$9$N$+e(B(e$B$^$@e(B)e$B$$$^$$$AL@3N$G$J$$!#8D?ME*$K$Oe(B
    quoe$B$Oe(Brdive$B$HF1$8$G$"$k$HG’<1$7$F$$$^$9$,!“e(B/e$B$Oe(BFloate$B$G$”$ke(B
    e$B$Y$-$J$N$+$J$"!#e(B

e$B$=$&$G$7$g$&$M!#e(Bquo e$B$O!"e(B1.8 e$B$He(B 1.9
e$B$G>/$70c$$$^$9$,!“0UL#$H$7$F$Oe(B quo
e$B$J$s$@$H;W$$$^$9!#e(Bruhy
e$B$H$7$F$O!”$=$&$$$&$N$,@5$7$$$h$&$J5$$,$7$^$9!#e(B

e$B$H$+$,$"$j$^$9!#$^$"!">/$7$:$D9M$($^$7$g$&!#>/$J$/$H$be(B1.9e$B$Ge(B
e$B1i;;;R$rJQ99$9$k$K$O$A$HCY$9$.$k$N$G!#e(B

e$B$^$"!"$=$s$J$K4JC1$KDL$k$H$O;W$C$F$$$^$;$s$,!“e(B2.0
e$B$/$i$$$K$O!”$=$&$J$Ce(B
e$B$F$$$F$b0-$/$O$J$$$h$&$K;W$$$^$9!#e(B

e$B$A$J$_$K!";d$N?4$E$b$j$H$7$F$O!Ve(Bquoe$B$O$b$C$H$b@53N$K6a$$CM$re(B
e$BJV$9!W$H$$$&$D$b$j$G$9!#$@$+$i!“e(B1.8e$B$@$He(BRationale$B$,$”$k$H$-$Ke(B
e$B$Oe(BRationale$B$rJV$7!"$J$$$H$-$K$Oe(BFloate$B$rJV$7$^$9!#e(B1.9e$B$G$O$$$D$be(B
Rationale$B!#$=$l$O!"$U$J$P$5$s$N%$%a!<%8$HBg$-$/0[$J$C$F$$$^$;e(B
e$B$s$+!)e(B

e$B@53N$H$$$&$N$,$I$&$$$&$b$N$+$o$+$j$^$;$s$,!“4pK\E*$K$O!”$=$l$G$$$$$H;We(B
e$B$$$^$9!#e(Brational
e$B$rJV$9$,$$$$$H;W$$$^$9$,!"$=$l$O$^$?JL$N2]Bj$@$H9M$(e(B
e$B$F$$$$$H;W$$$^$9!#e(B

e$B$7$F$$$k$N$G!“e(B(2)e$B$NJ}$,NI$$$h$&$K;W$C$F$$$^$9!#$7$+$7!”$=$NJUe(B
e$B$O<B:]$Ke(BRationale$B$de(BFloate$B$r;H$&?M$N0U8+$rJ9$-$?$$$b$N$G$9!#e(B

10e$BG/6a$/A0$N5DO@$G$b>/$7OC$,$"$j$^$7$?$,!"e(BFloat
e$B$OJL$b$N$G!"e(BFloat e$B$r$De(B
e$B$+$&$H!“1x@w$5$l$k!”$H$$$&$3$H$K$J$C$F$$$^$9$M!#e(BCommon Lisp
e$B$G$O!"e(B
floating-point contagion e$B$H$$$&$h$&$G$9$,!#e(B