EN JA
REMAINDER(3)
REMAINDER(3) FreeBSD Library Functions Manual REMAINDER(3)

名称

remainder, remainderf, remainderl, remquo, remquof, remquol最小の剰余関数

ライブラリ

Math Library (libm, -lm)

書式

#include < math.h>

double
remainder( double x, double y);

float
remainderf( float x, float y);

long double
remainderl( long double x, long double y);

double
remquo( double x, double y, int *quo);

float
remquof( float x, float y, int *quo);

long double
remquol( long double x, long double y, int *quo);

解説

remainder(), remainderf(), remainderl(), remquo(), remquof() と remquol() は、 r := x - n∗y の剰余を返します。ここで、 nx/ y の正確な値に最も近い整数です。さらに、 | n - x/ y| = 1/2 ならば、 n は偶数です。その結果として、剰余は正確に計算され、 | r| ≤ | y|/2 です。しかし、 y が 0 であるか、または x が±infinity であるときに、剰余を取る試みは、NaN を生成する無効の操作です。

また、 remquo(), remquof() と remquol() 関数は、 n が存在しているならば、 quo によって指された位置に、 n の最後の k ビットを格納します。ビット k の数は、プラットフォーム特有ですが、少なくとも 3 となるように保証されます。

関連項目

fmod(3), ieee(3), math(3)

規格

remainder(), remainderf(), remainderl(), remquo(), remquof() と remquol() ルーチンは ISO/IEC 9899:1999 (“ISO C99”) に適合しています。剰余は、 IEEE Std 754-1985 に定義されたとおりです。

歴史

remainder() と remainderf() 関数はそれぞれ 4.3BSDFreeBSD 2.0 ではじめて登場しました。 remquo() と remquof() 関数は FreeBSD 6.0 で追加され、 remainderl() と remquol() は、 FreeBSD 8.0 で追加されました。
March 30, 2008 FreeBSD