2 /* Author Robert R. Hall (hall@crach.cts.com) */
4 /* $Id: fmod.c,v 1.4 1994/06/24 11:43:40 ceriel Exp $ */
10 (fmod)(double x, double y)
11 { /* compute fmod(x, y) */
20 /* fmod(finite, finite) */
22 if (x < 0.0) x = -x, neg = 1;
25 /* substract |y| until |x| < |y| */
28 for (n = xchar - ychar; 0 <= n; --n) {
29 /* try to substract |y|*2^n */
33 return (neg ? -x : x);