div_floor
return mod1(2 + div_floor((int)lon, 30), 12);
date->cycle = div_floor(elapsed_years - 1, 60) + 1;
int century = div_floor(g_year, 100) + 1;
div_floor(5 + 8 * century, 25));
int n400 = div_floor(d0, 146097);
int n100 = div_floor(d1, 36524);
int n4 = div_floor(d2, 1461);
int n1 = div_floor(d3, 365);
date->month = div_floor(12 * (pdays + correction) + 373, 367);
div_floor(date->year - 1, 4) -
div_floor(date->year - 1, 100) +
div_floor(date->year - 1, 400) +
div_floor(date->month * 367 - 362, 12));
date->year = div_floor(4 * (rd - epoch) + 1464, 1461);
date->month = div_floor(12 * (pdays + correction) + 373, 367);
div_floor(y - 1, 4) +
div_floor(date->month * 367 - 362, 12));
return x - y * div_floor(x, y);