Last change
on this file since f40d52b was 3ae31e9, checked in by Thomas Lopatic <thomas@…>, 7 years ago |
Imported original source code.
|
-
Property mode
set to
100755
|
File size:
944 bytes
|
Rev | Line | |
---|
[3ae31e9] | 1 | /*
|
---|
| 2 | =============================================================================
|
---|
| 3 | wkday.c -- determine the day of the week by Zeller's Congruence
|
---|
| 4 | Version 1 -- 1988-01-20 -- D.N. Lynx Crowe
|
---|
| 5 |
|
---|
| 6 | Uses the Gregorian calendar -- accurate from 1752 through 4901 A.D.
|
---|
| 7 |
|
---|
| 8 | short
|
---|
| 9 | wkday(year, month, day)
|
---|
| 10 | short year, month, day;
|
---|
| 11 |
|
---|
| 12 | year 1752..4901
|
---|
| 13 | month 1..12 1 = Jan., 2 = Feb., ..., 12 = Dec.
|
---|
| 14 | day 1..31
|
---|
| 15 |
|
---|
| 16 | Returns:
|
---|
| 17 |
|
---|
| 18 | 0 - Sunday
|
---|
| 19 | 1 - Monday
|
---|
| 20 | 2 - Tuesday
|
---|
| 21 | 3 - Wednesday
|
---|
| 22 | 4 - Thursday
|
---|
| 23 | 5 - Friday
|
---|
| 24 | 6 - Saturday
|
---|
| 25 | =============================================================================
|
---|
| 26 | */
|
---|
| 27 |
|
---|
| 28 | short
|
---|
| 29 | wkday(year, month, day)
|
---|
| 30 | register short year, month, day;
|
---|
| 31 | {
|
---|
| 32 | register short cen, yinc;
|
---|
| 33 |
|
---|
| 34 | month -= 2;
|
---|
| 35 |
|
---|
| 36 | if (month < 1) {
|
---|
| 37 |
|
---|
| 38 | month += 12;
|
---|
| 39 | --year;
|
---|
| 40 | }
|
---|
| 41 |
|
---|
| 42 | cen = year / 100;
|
---|
| 43 | yinc = year - (cen * 100);
|
---|
| 44 |
|
---|
| 45 | return(((((26 * month) - 2) / 10) + day + yinc + (yinc / 4)
|
---|
| 46 | + (cen / 4) - (2 * cen)) % 7);
|
---|
| 47 | }
|
---|
Note:
See
TracBrowser
for help on using the repository browser.