ref: c0a7fbea1f61b1d77a09d612b85c74fd6c673b7c
dir: /sys/src/libc/port/floor.c/
#include <u.h> #include <libc.h> /* * floor and ceil-- greatest integer <= arg * (resp least >=) */ double floor(double d) { double fract; if(d < 0) { fract = modf(-d, &d); if(fract != 0.0) d += 1; d = -d; } else modf(d, &d); return d; } double ceil(double d) { return -floor(-d); }