BloombergLP::bdldfp::DecimalImpUtil::remainder

Return the remainder of the division of the specified x by the specified y. The remainder of the division operation x/y calculated by this function is exactly the value x - n*y, where n s the integral value nearest the exact value x/y. When |n - x/y| == 0.5, the value n is chosen to be even. Note that in contrast to DecimalImpUtil::fmod(), the returned value is not guaranteed to have the same sign as x.

Synopsis

Declared in <bdldfp_decimalimputil.h>

static
DecimalImpUtil::ValueType32
remainder(
    ValueType32 x,
    ValueType32 y);

Description

Special value handling: * The current rounding mode has no effect. * If either argument is quiet NaN, quiet NaN is returned. * If either argument is signaling NaN, quiet NaN is returned, and the value of the macro EDOM is stored into errno. * If y is +/-0, quiet NaN is returned and the value of the macro EDOM is stored into errno. * If x is +/-infnity and y is not NaN, quiet NaN is returned and the value of the macro EDOM is stored into errno. * If x is finite and y is +/-infnity, x is returned.