int dayofweek( year, month, day ) /* 0 = Sunday */
int year, month, day; /* y > 1752 */
{
static int offset[] = {0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4};
year -= month < 3;
return (year + year/4 - year/100 + year/400 + offset[month-1] + day) % 7;
}
int dayofweek( int year, int month, int day) /* 0=sunday, 1=monday, etc. */
{
int a = (14-month) / 12;
int y = year - a;
int m = month + 12*a - 2;
return (day + y + y/4 - y/100 + y/400 + (31*m)/12) % 7;
}