.\" Updated Wed Oct 15 JST 2003 by Kentaro Shirakata <argrath@ub32.org>
.\" Updated 2008-09-16, Akihiro MOTOKI <amotoki@dd.iij4u.or.jp>
.\"
-.\" WORD: remainder function ¾ê;´Ø¿ô
+.\" WORD: remainder function 剰余関数
.\"
.TH FMOD 3 2010-09-20 "" "Linux Programmer's Manual"
-.SH ̾Á°
-fmod, fmodf, fmodl \- ÉâÆ°¾®¿ôÅÀ¾ê;´Ø¿ô
-.SH ½ñ¼°
+.SH 名前
+fmod, fmodf, fmodl \- 浮動小数点剰余関数
+.SH 書式
.nf
.B #include <math.h>
.sp
.BI "long double fmodl(long double " x ", long double " y );
.fi
.sp
-\fI\-lm\fP ¤Ç¥ê¥ó¥¯¤¹¤ë¡£
+\fI\-lm\fP でリンクする。
.sp
.in -4n
-glibc ¸þ¤±¤Îµ¡Ç½¸¡ºº¥Þ¥¯¥í¤ÎÍ×·ï
+glibc 向けの機能検査マクロの要件
.RB ( feature_test_macros (7)
-»²¾È):
+参照):
.in
.sp
.ad l
.I cc\ -std=c99
.RE
.ad
-.SH ÀâÌÀ
+.SH 説明
.BR fmod ()
-´Ø¿ô¤Ï \fIx\fP ¤ò \fIy\fP ¤Ç³ä¤Ã¤¿ÉâÆ°¾®¿ôÅÀ¾ê;¤ò·×»»¤¹¤ë¡£
-ÊÖ¤êÃÍ¤Ï \fIx\fP \- \fIn\fP * \fIy\fP ¤Ç¤¢¤ë¡£
-¤³¤³¤Ç¡¢\fIn\fP ¤Ï \fIx\fP / \fIy\fP ¤Î¾¦¤ò
-¥¼¥í¤Ë¸þ¤«¤¦Êý¸þ¤ÇÀ°¿ôÃͤ˴ݤ᤿¤â¤Î¤Ç¤¢¤ë¡£
-.SH ÊÖ¤êÃÍ
-À®¸ù¤¹¤ë¤È¡¢¤³¤ì¤é¤Î´Ø¿ô¤Ï \fIx\fP\ \-\ \fIn\fP*\fIy\fP ¤òÊÖ¤¹¡£
-\fIn\fP ¤Ï¡¢ÊÖ¤êÃͤ¬
+関数は \fIx\fP を \fIy\fP で割った浮動小数点剰余を計算する。
+返り値は \fIx\fP \- \fIn\fP * \fIy\fP である。
+ここで、\fIn\fP は \fIx\fP / \fIy\fP の商を
+ゼロに向かう方向で整数値に丸めたものである。
+.SH 返り値
+成功すると、これらの関数は \fIx\fP\ \-\ \fIn\fP*\fIy\fP を返す。
+\fIn\fP は、返り値が
.I x
-¤ÈƱ¤¸Éä¹æ¤Ç¡¢¤½¤ÎÀäÂÐÃͤ¬
+と同じ符号で、その絶対値が
.I y
-¤ÎÀäÂÐÃͤè¤ê¤â¾®¤µ¤¯¤Ê¤ë¤è¤¦¤ÊÀ°¿ô¤Ç¤¢¤ë¡£
+の絶対値よりも小さくなるような整数である。
.I x
-¤«
+か
.I y
-¤¬ NaN ¤Î¾ì¹ç¡¢NaN ¤¬ÊÖ¤µ¤ì¤ë¡£
+が NaN の場合、NaN が返される。
.I x
-¤¬Ìµ¸ÂÂç¤Î¾ì¹ç¡¢Îΰ襨¥é¡¼ (domain error) ¤¬È¯À¸¤·¡¢
-NaN ¤¬ÊÖ¤µ¤ì¤ë¡£
+が無限大の場合、領域エラー (domain error) が発生し、
+NaN が返される。
.I y
-¤¬ 0 ¤Î¾ì¹ç¡¢Îΰ襨¥é¡¼¤¬È¯À¸¤·¡¢
-NaN ¤¬ÊÖ¤µ¤ì¤ë¡£
+が 0 の場合、領域エラーが発生し、
+NaN が返される。
.I x
-¤¬ +0 (\-0) ¤Ç
+が +0 (\-0) で
.I y
-¤¬ 0 ¤Ç¤Ê¤¤¾ì¹ç¡¢+0 (\-0) ¤¬ÊÖ¤µ¤ì¤ë¡£
-.SH ¥¨¥é¡¼
-¤³¤ì¤é¤Î´Ø¿ô¤ò¸Æ¤Ó½Ð¤·¤¿ºÝ¤Ë¥¨¥é¡¼¤¬È¯À¸¤·¤¿¤«¤ÎȽÄêÊýË¡¤Ë¤Ä¤¤¤Æ¤Î¾ðÊó¤Ï
+が 0 でない場合、+0 (\-0) が返される。
+.SH ã\82¨ã\83©ã\83¼
+これらの関数を呼び出した際にエラーが発生したかの判定方法についての情報は
.BR math_error (7)
-¤ò»²¾È¤Î¤³¤È¡£
+を参照のこと。
.PP
-°Ê²¼¤Î¥¨¥é¡¼¤¬È¯À¸¤¹¤ë²ÄǽÀ¤¬¤¢¤ë¡£
+以下のエラーが発生する可能性がある。
.TP
-Îΰ襨¥é¡¼: \fIx\fP ¤¬Ìµ¸ÂÂç
+領域エラー: \fIx\fP が無限大
.I errno
-¤Ë
+に
.B EDOM
-¤¬ÀßÄꤵ¤ì¤ë (¡Ö¥Ð¥°¡×¤ÎÀá¤â»²¾È)¡£
-ÉÔÀµ (invalid) ÉâÆ°¾®¿ôÅÀÎã³°
+が設定される (「バグ」の節も参照)。
+不正 (invalid) 浮動小数点例外
.RB ( FE_INVALID )
-¤¬¾å¤¬¤ë¡£
+が上がる。
.TP
-Îΰ襨¥é¡¼: \fIy\fP ¤¬¥¼¥í
+領域エラー: \fIy\fP がゼロ
.I errno
-¤Ë
+に
.B EDOM
-¤¬ÀßÄꤵ¤ì¤ë¡£
-ÉÔÀµ (invalid) ÉâÆ°¾®¿ôÅÀÎã³°
+が設定される。
+不正 (invalid) 浮動小数点例外
.RB ( FE_INVALID )
-¤¬¾å¤¬¤ë¡£
+が上がる。
.\" POSIX.1 documents an optional underflow error, but AFAICT it doesn't
.\" (can't?) occur -- mtk, Jul 2008
-.SH ¥Ð¥°
+.SH ã\83\90ã\82°
.\" http://sources.redhat.com/bugzilla/show_bug.cgi?id=6784
-¥Ð¡¼¥¸¥ç¥ó 2.10 ¤è¤êÁ°¤Î glibc ¤Î¼ÂÁõ¤Ç¤Ï¡¢
-̵¸ÂÂç¤ÇÎΰ襨¥é¡¼¤¬È¯À¸¤·¤¿ºÝ¤Ë¡¢
+バージョン 2.10 より前の glibc の実装では、
+無限大で領域エラーが発生した際に、
.I error
-¤Ë
+に
.B EDOM
-¤¬ÀßÄꤵ¤ì¤Ê¤«¤Ã¤¿¡£
-.SH ½àµò
+が設定されなかった。
+.SH 準拠
C99, POSIX.1-2001.
.I double
-ÈǤδؿô¤Ï SVr4, 4.3BSD, C89 ¤Ë¤â½àµò¤·¤Æ¤¤¤ë¡£
-.SH ´ØÏ¢¹àÌÜ
+版の関数は SVr4, 4.3BSD, C89 にも準拠している。
+.SH 関連項目
.BR remainder (3)