1 #include <lib9.h> 2 /* 3 * floor and ceil-- greatest integer <= arg 4 * (resp least >=) 5 */ 6 7 double floor(double d)8floor(double d) 9 { 10 double fract; 11 12 if(d < 0) { 13 fract = modf(-d, &d); 14 if(fract != 0.0) 15 d += 1; 16 d = -d; 17 } else 18 modf(d, &d); 19 return d; 20 } 21 22 double ceil(double d)23ceil(double d) 24 { 25 return -floor(-d); 26 } 27