# remainderf(3m) [opensolaris man page]

```remainder(3M)						  Mathematical Library Functions					     remainder(3M)

NAME
remainder, remainderf, remainderl - remainder function

SYNOPSIS
c99 [ flag... ] file... -lm [ library... ]
#include <math.h>

double remainder(double x, double y);

float remainderf(float x, float y);

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

DESCRIPTION
These  functions  return  the  floating	point remainder r = x - ny when y is non-zero. The value n is the integral value nearest the exact
value x/y. When |n - x/y| = 1/2, the value n is chosen to be even.

The behavior of remainder() is independent of the rounding mode.

RETURN VALUES
Upon successful completion, these functions return the floating point remainder r = x - ny when y is non-zero.

If x or y is NaN, a NaN is returned.

If x is infinite or y is 0 and the other is non-NaN, a domain error occurs and a NaN is returned.

ERRORS
These functions will fail if:

Domain Error    The x argument is +-Inf, or the y argument is +-0 and the other argument is non-NaN.

If the integer expression (math_errhandling & MATH_ERREXCEPT) is non-zero, then the  invalid  floating-point  exception	is
raised.

The remainder() function sets errno to EDOM if y argument is 0 or the x argument is positive or negative infinity.

USAGE
An  application	wanting  to  check for error situations can set errno to 0 before calling remainder(). On return, if errno is non-zero, an
error has occurred. The remainderf() and remainderl() functions do not set errno.

ATTRIBUTES
See attributes(5) for descriptions of the following attributes:

+-----------------------------+-----------------------------+
|      ATTRIBUTE TYPE	     |	    ATTRIBUTE VALUE	   |
+-----------------------------+-----------------------------+
|Interface Stability	     |Standard			   |
+-----------------------------+-----------------------------+
|MT-Level		     |MT-Safe			   |
+-----------------------------+-----------------------------+

SEE ALSO
abs(3C), div(3C), feclearexcept(3M), fetestexcept(3M), attributes(5), standards(5)

SunOS 5.11							    12 Jul 2006 						     remainder(3M)```

## Check Out this Related Man Page

```remquo(3M)						  Mathematical Library Functions						remquo(3M)

NAME
remquo, remquof, remquol - remainder functions

SYNOPSIS
cc [ flag... ] file... -lm [ library... ]
#include <math.h>

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);

DESCRIPTION
The  remquo(),  remquof(), and remquol() functions compute the same remainder as the remainder(), remainderf(), and remainderl() functions,
respectively. See remainder(3M). In the object pointed to by quo, they store a value whose sign is the sign of x/y and whose  magnitude	is
congruent modulo 2**n to the magnitude of the integral quotient of x/y, where n is an integer greater than or equal to 3.

RETURN VALUES
These functions return x REM y.

If x or y is NaN, a NaN is returned.

If x is +-Inf or y is 0 and the other argument is non-NaN, a domain error occurs and a NaN is returned.

ERRORS
These functions will fail if:

Domain Error    The x argument is Inf or the y argument is 0 and the other argument is non-NaN.

If  the	integer  expression  (math_errhandling & MATH_ERREXCEPT) is non-zero, then the invalid floating-point exception is
raised.

USAGE
An application wanting to check for exceptions should call feclearexcept(FE_ALL_EXCEPT) before  calling	these  functions.  On  return,	if
fetestexcept(FE_INVALID	|  FE_DIVBYZERO  |  FE_OVERFLOW  |  FE_UNDERFLOW) is non-zero, an exception has been raised. An application should
either examine the return value or check the floating point exception flags to detect exceptions.

ATTRIBUTES
See attributes(5) for descriptions of the following attributes:

+-----------------------------+-----------------------------+
|      ATTRIBUTE TYPE	     |	    ATTRIBUTE VALUE	   |
+-----------------------------+-----------------------------+
|Interface Stability	     |Standard			   |
+-----------------------------+-----------------------------+
|MT-Level		     |MT-Safe			   |
+-----------------------------+-----------------------------+

SEE ALSO
feclearexcept(3M), fetestexcept(3M), math.h(3HEAD), remainder(3M), attributes(5), standards(5)

SunOS 5.10							    1 Sep 2002								remquo(3M)```
Man Page