REMQUO(3)                 (2017-09-15)                  REMQUO(3)

          remquo, remquof, remquol - remainder and part of quotient

          #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

          Link with -lm.

     Feature Test Macro Requirements for glibc (see

          remquo(), remquof(), remquol():
              _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L

          These functions compute the remainder and part of  the  quo-
          tient  upon  division  of x by y. A few bits of the quotient
          are stored via the quo pointer.  The remainder  is  returned
          as the function result.

          The value of the remainder is the same as that  computed  by
          the remainder(3) function.

          The value stored via the quo pointer has the sign  of  x / y
          and  agrees  with  the  quotient in at least the low order 3

          For example, remquo(29.0, 3.0) returns -1.0 and might  store
          2.   Note that the actual quotient might not fit in an inte-

          On success, these functions return the  same  value  as  the
          analogous functions described in remainder(3).

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

          If x is an infinity, and y is not  a  NaN,  a  domain  error
          occurs, and a NaN is returned.

          If y is zero, and x is not a NaN, a domain error occurs, and
          a NaN is returned.

          See  math_error(7)  for  information  on  how  to  determine
          whether an error has occurred when calling these functions.

     Page 1                         GNU              (printed 5/17/22)

     REMQUO(3)                 (2017-09-15)                  REMQUO(3)

          The following errors can occur:

     is not a NaN
          Domain error: x is an infinity or y is 0, and the other  argument
               An  invalid  floating-point  exception  (FE_INVALID) is

          These functions do not set errno.

          These functions first appeared in glibc in version 2.1.

          For an explanation of the terms used in  this  section,  see
          attributes(7).     allbox;    lbw30    lb    lb   l   l   l.
          Interface Attribute Value T{ remquo(), remquof(),  remquol()
          T}   Thread safety  MT-Safe

          C99, POSIX.1-2001, POSIX.1-2008.

          fmod(3), logb(3), remainder(3)

          This page is part of release 5.10  of  the  Linux  man-pages
          project.   A  description  of the project, information about
          reporting bugs, and the latest version of this page, can  be
          found at

     Page 2                         GNU              (printed 5/17/22)