/* DEC *DecimalModuloUnsLong(pDst, pSrc1, pSrc2); * * ARGUMENT * DEC *pDst, *pSrc1; * unsigned long pSrc2; * * DESCRIPTION * Sets pDst = pSrc1 mod pSrc2. * * SIDE EFFECTS * None. * * RETURNS * pDst if successful, otherwise GM_NULL. * * POSSIBLE ERRORS * GM_NULLPOINTER * GM_DIV0 (if pSrc2 == 0) * * ALGORITHM * a mod b = a - int(a / b) * b * * AUTHOR * Jared Levy * Copyright (C) 1987-1990 Greenleaf Software Inc. All rights reserved. * * MODIFICATIONS * * */ #include #include "gm.h" #include "gmsystem.h" DEC *DecimalModuloUnsLong(pDst, pSrc1, pSrc2) DEC *pDst, *pSrc1; unsigned long pSrc2; { DEC dt2, *t2=&dt2, *pd; _MacStart(GM_DMODI); (void) ConvUnsLongToDecimal(t2, pSrc2); pd = ModuloDecimal(pDst, pSrc1, t2); _MacRet(pd); }