e$B5WJ]$G$9!#e(B
ruby 1.9.2 e$B$G$Oe(B Math::atan2(0, 0)
e$B$,Nc30$r>e$2$k$h$&$KJQ99$5$l$F$$$^$9e(B
e$B$,!“85$KLa$7$?$[$&$,NI$/$”$j$^$;$s$+!)e(B
e$B0J2<!"@bL@!#e(B
1.9.1 e$B0JA0$G$Oe(B Math::atan2(0, 0)
e$B$O0z?t$NId9f$K$h$C$F!"0J2<$N$h$&$JCMe(B
e$B$rLa$7$F$$$^$7$?!#e(B(Linux & Windows e$B$G;n83e(B)
Math::atan2(+0.0, +0.0) → +0.0
Math::atan2(+0.0, -0.0) → +Math::PI
Math::atan2(-0.0, +0.0) → -0.0
Math::atan2(-0.0, -0.0) → -Math::PI
1.9.2 e$B$G$Oe(B r26785 e$B$NJQ99$Ge(B Math::DomainError
e$BNc30$r>e$2$k$h$&$KJQ99$5e(B
e$B$l$F$$$^$7$?!#e(B
e$B1Q8lHGe(B Wikipadia e$B$Ne(B atan2 e$B$r8+$?$H$3$m!"e(Batan2(0, 0)
e$B$NLa$jCM$Oe(B
undefined e$B$G!"e(BSingle UNIX Specification version 2 e$B$Ne(B atan2
e$B$NDj5A$K$Oe(B
If both arguments are 0.0, an implementation-dependent value is
returned
and errno may be set to [EDOM].
(opengroup.org
e$B$H=q$+$l$F$$$k$N$G!“$3$N5-=R$K=>$&$HNc30$r>e$2$k$N$b$”$j$+$J$H$O;W$C$?e(B
e$B$1$I!"e(B2004e$BG/HG$Ne(B Single UNIX Specification version 3
e$B$G$O!"e(B
(2001e$BG/HG$O$_$D$+$i$J$+$C$?e(B…)
If y is e$B!^e(B0 and x is -0, e$B!^&Pe(B shall be returned.
If y is e$B!^e(B0 and x is +0, e$B!^e(B0 shall be returned.
(http://www.opengroup.org/onlinepubs/000095399/functions/atan2.htmle$B$h$j0zMQe(B)
e$B$HJQ99$5$l$F$$$?!#>e5-$Ne(B Windows & Linux
e$B$G$N;n837k2L$O$3$N5-=R$K=>$Ce(B
e$B$?$N$@$H;W$o$l$k!#e(B
e$B:G6a$N%7%9%F%`$G$Oe(B atan2(0, 0)
e$B$NLa$jCM$,<BAu0MB8$G$O$J$/$J$C$F$-$F$*e(B
e$B$j!"$^$?!“e(B"errno may be set to [EDOM].”
e$B$H$$$&5-=R$b>C$($F$$$k$N$G!“e(B
Math::atan2(0, 0) e$B$G0z?t$,N>J}$H$be(B 0 e$B$J$i$Pe(B
Math::DomainError e$B$r>e$2$ke(B
e$B$H$$$&$N$O;_$a$?$[$&$,NI$$$H;W$&$N$G$9$,!”$I$&$G$7$g$&$+!)e(B
1.9.2
e$B$K$7$?$i$$$-$J$jNc30$,>e$,$k$h$&$K$J$j$S$C$/$j$7$?$b$N$Ge(B…e$B!#e(B