This is a more involved method to calculate the day of the week
for Gregorian calendar dates from 15.oct.1582 & as far into the
future as workable for Abacus users via formulas in base 8 that
require fewer operations than any other method not using tables.
Given:
XY.EFG.MO.DA as the octal digits of a Date in c.y.m.d format, &
xy.efg as the digits of the century & year 2 months earlier,
one can convert the given Date into a day of the week in less
than two dozen operations by means of the three steps below.
STEP 0. Process components of the Date as follows:
PQR = efg - Floor(.MO - .03)
pqr = efg + 44
VW.bug = xy.pqr + xy.pqr
STEP 1. Apply Lachman's Congruence in base 8
cow = MM+MM+MOO+O + MM+MM+MOO+O
min = co + 71
STEP 2. Apply the octal formula for converting the Date
bu-W + P+Q+R + ~m+i+n + D+A
STEP 3. Likewise add the digits of the result, and repeat for
each successive result until only one digit remains. This is
a number as assigned by ISO 8601 to each day of the week:
Mon=1 Tue=2 Wed=3 Thu=4 Fri=5 Sat=6 Sun=7.
EXAMPLE 0. December 31st, 2099: XY.EFG.MO.DA = 24.143.14.37
xy.efg = 24.143
PQR = 143 - 0
pqr = 143 + 44 = 207
xy.pqr = 24.207
VW.bug = 50.416
cow = 11+11+144+4 + same = 172 + 172 = 364
min = 36 + 71 = 127
41-0 + 1+4+3 + 0+2+7 + 3+7 = 41+10+11+12 = 74 7+4 = 13
1+3 = 4 Day of Week = Thursday
EXAMPLE 1. January 1st, 2100: XY.EFG.MO.DA = 25.000.01.01
xy.efg = 24.143
PQR = 143 - -1 = 144
pqr = 143 + 44 = 207
xy.pqr = 24.207
VW.bug = 50.416
cow = 00+00+011+1 + same = 012 + 012 = 024
min = 02 + 71 = 073
41-0 + 1+4+4 + 1+7+3 + 01 = 41+11+13+1 = 66 6+6 = 14
1+4 = 5 Day of Week = Friday
EXAMPLE 2. February 2nd, 2200: XY.EFG.MO.DA = 26.000.02.02
xy.efg = 25.143
PQR = 143 - -1 = 144
pqr = 143 + 44 = 207
xy.pqr = 25.207
VW.bug = 52.416
cow = 00+00+022+2 + same = 024 + 024 = 050
min = 05 + 71 = 076
41-2 + 1+4+4 + 1+7+6 + 02 = 37+11+16+2 = 70 7+0 = 7
Day of Week = Sunday
EXAMPLE 3. March 3rd, 2300: XY.EFG.MO.DA = 27.000.03.03
xy.efg = 27.000
PQR = 000 - 0
pqr = 000 + 44
xy.pqr = 27.044
VW.bug = 56.110
cow = 00+00+033+3 + same = 036 + 036 = 074
min = 07 + 71 = 100
11-6 + 000 + 0+0+0 + 03 = 3+0+0+3 = 6
Day of Week = Saturday
EXAMPLE 4. April 4th, 2400: XY.EFG.MO.DA = 30.000.04.04
xy.efg = 30.000
PQR = 000 - 0
pqr = 000 + 44
xy.pqr = 30.044
VW.bug = 60.110
cow = 00+00+044+4 + same = 050 + 050 = 120
min = 12 + 71 = 103
11-0 + 000 + 0+0+3 + 04 = 11+0+3+4 = 20 2+0 = 2
Day of Week = Tuesday
--
REFERENCES
gopher://gopherite.org/0/users/retroburrowers/TemporalRetrology/68k/all
gopher://gopherite.org/0/users/retroburrowers/TemporalRetrology/cc/g4
Response:
text/plain