因為在緣生術數研究社看到此議題,而該網站很難進去,就想移到本站
(超快),花了一些時間打了一些資料,希望對大家有幫助,文章寫不好,
如有錯誤,請多多指教.
前言:一般人對於西曆元旦日干支大多依賴萬年曆,或查表,香港緣生網站已經有人
以民國年數導出速算口訣,確實好用,不過如要推200年以前的元旦日干支,就不夠
用了,為解決此小缺憾,特整理以西曆儒略曆及格勒哥里曆(簡稱格里曆)適用的心
算法發表,目的是使人能一見西曆年月日,就能以簡單算數算出日干支.
一.儒略周日:若知每年1月1日前一天的儒略周日(基數),則當年任何一日的儒略周
日皆可算得.日干支=[(儒略周日-10)/60]R,R代表取餘數,R=0則R=60
公式如下:
格里曆(自西元1582年10月15日儒略周日2299161起行,英國自1752年9月14日儒略
周日2361222起行)
DC=西元年數,BC=西元前年數,Y=6401-BC
儒略周日基數=(DC-1)*365+[(DC-1)/4]Q-[(DC-1)/100]Q+[(DC-1)/400]Q+1721425
儒略周日基數=(Y-1)*365+[(Y-1)/4]Q-[(Y-1)/100]Q+[(Y-1)/400]Q-616127
Q代表取整數.
置閏之法
1.DC或Y可被4整除但不可被100整除為閏年,2月29天,其餘為平年,2月28天.
2.DC或Y可被400整除者為閏年.
儒略曆(曆元西元前45年1月1日儒略周日1704987至西元1582年10月4日儒略周日
2299160止)(英國至1752年9月2日儒略周日2361221止)
儒略周日基數=(DC-1)*365+[(DC-1)/4]Q+1721423
儒略周日基數=(Y-1)*365+[(Y-1)/4]Q-616177
置閏之法,DC或Y可被4整除整除為閏年,2月29天,其餘為平年,2月28天.
1.例如求2001年9月8日格里曆日干支為何?
2001/4=500餘1,故知為平年
儒略周日基數=(2001-1)*365+[(2001-1)/4]Q-[(2001-1)/100]Q+[(2001-1)/400]Q+1721425
=2451910
9月8日儒略周日=2451910+31+28+31+30+31+30+31+31+8=2452161
[(2452161-10)/60]R=11甲戌日
2.求西元前551年9月28日格里曆(孔子誕辰)日干支?
Y=6401-551=5850 ,5850/4=1462餘2,故知為平年
儒略周日基數=(5850-1)*365+[(5850-1)/4]Q-[(5850-1)/100]Q+[(5850-1)/400]Q-616127
=1520176
9月28日儒略周日=1520176+31+28+31+30+31+30+31+31+28=1520447
[(1520447-10)/60]R=37庚子日
3.漢太初元年正月初一日癸亥.*儒略曆*西元前104年2月22日
Y=6401-104=6297平年
儒略周日基數(6297-1)*365+[(6297-1)/4]Q-616177
=1683437
2月22日儒略周日=1683437+31+22=1683490
[(1683490-10)/60]R=0癸亥日
二.如不須知儒略周日,可化簡求算日干支
以格里曆為例
干支基數B=[{(DC-1)*5+[(DC-1)/4]R-[(DC-1)/100]R+[(DC-1)/400]R+15}/60]R
或 B=[{(Y-1)*5+[(Y-1)/4]R-[(Y-1)/100]R+[(Y-1)/400]R+3}/60]R
例1.求西元1967年3月25日日干支?平年
干支基數B
=[{(1967-1)*5+[(1967-1)/4]R-[(1967-1)/100]R+[(1967-1)/400]R+15}/60]R
={[9830+491-19+4+15]/60}R
=(10321/60)R
=1
日干支=1+31+28+25=85,85-60=25戊子日
為免逐月計算麻煩,可先列表如下:
****1月2月3月4月5月*6月*7月*8月*9月*10月11月12月
平年0**+31+59+90+120+151+181+212+243+273+304+334
閏年0**+31+60+91+121+152+182+213+244+274+305+335
例2.1985年12月22日日干支?
B=36,平年,36+334+22=392,392-60*6=32乙未日
例3.1899年3月8日日干支?
B=5,平年,5+59+8=72,72-60=12日干支為乙亥.
以上要用到計算器,且仍太複雜,以下介紹的可以用心算.
陽曆求干支速算公式
A.格里曆
Y=DC-1;C=(Y/100)Q,取整數加1即世紀數.Y2=西曆年之個十兩位數-1=(Y/100)R
K=世紀年干支基數
C/4=M....餘數R
K=15-3M-16R+-60n,n為正整數.
DC年干支基數=Y2*5+(Y2/4)Q+K+-60n
Y2*5這項Y2可先減去12的倍數,如12,24,36,48,60,72,84,96等等
例一.西元1958年,Y=1958-1=1957,C=19,Y2=57,C/4=19/4=4...餘3,M=4,R=3
K=15-3*4-16*3=-45,-45+60=15
1958年干支基數=57*5+(57/4)Q+15=(57-48)*5+14+15=45+14+15=74,74-60=14
例二.西元1700年,Y=1700-1=1699,C=16,Y2=99,C/4=4...餘0,M=4,R=0
K=15-3*4-16*0=15-12=3
1700年干支基數=99*5+(99/4)Q+3=(99-96)*5+24+3=15+24+3=42
B.儒略曆
Y=DC-1;C=(Y/100)Q,取整數加1即世紀數.Y2=西曆年之個十兩位數-1=(Y/100)R
K=世紀年干支基數
C/4=M....餘數R
K=13-15R+-60n
DC年干支基數=Y2*5+(Y2/4)Q+K+-60n
例一.西元1582年,Y=1582-1=1581,C=15,Y2=81,C/4=3...餘3,R=3
K=13-15*3=-32,-32+60=28
1582年干支基數=81*5+(81/4)Q+28=(81-72)*5+20+28=45+20+28=93,93-60=33
例二.西元1000年,Y=1000-1=999,C=9,Y2=99,C/4=2...R=1
K=13-15*1=-2
1000年干支基數=99*5+(99/4)Q-2=(99-96)*5+24+3=15+24-2=37,元旦日干支=38
辛丑.
元旦日的干支是干支基數加1即是.西元前的算法取Y=6401-BC,K的公式格里曆時
改為K=3-3M-16R+-60n,儒略曆時則與西元後的公式相同.
每月之日干支序數SH公式(月數>=3)
格里曆/儒略曆,平年,奇數月SH=(月數/2)Q+28-30+D,當月數>=9時,SH要加1
偶數月SH=(月數/2)+28+D,...D為日數.
閏年,上面兩式中之28改為29
2月之SH=31+D,1月之SH=D
求任一日的日干支=當年干支基數+SH
接下來提供一些算例,以加深印象.
1.韓信-240.10.6(酉時生)(儒略曆)
6401-240=6161平年
61 ->13-15=-2
61 ->60 ->15
10月,10/2+28+6=39
日干支=-2+15+39=52乙卯
2.關羽160.8.15(申時生)(儒略曆)
1 ->13-15=-2,閏年(由160判斷,以下同)
60 ->59 ->55+14=69 ->9
8月,8/2+29+15=48
日干支=-2+9+48=55戊午
3.諸葛孔明181.8.20(巳時生)(儒略曆)
1 ->13-15=-2,平年
81 ->80 ->40+20=60 ->0
8月,8/2+28+20=52
日干支=-2+52=50癸丑
4.韓愈768.8.18(辰時生)(儒略曆)
7 ->13-15*3=-32,閏年
68 ->67 ->35+16=51
8月,8/2+29+18=51
日干支=-32+51+51=70 ->10癸酉
5.邵康節1012.1.21(戌時生)(儒略曆)
10 ->13-15*2=-17,閏年
12 ->11 ->55+2=57
1月,21
日干支=-17+57+21=61 ->1甲子
6.司馬光1019.11.17(儒略曆)
10 ->13-15*2=-17,平年
19 ->18 ->30+4=34
11月,5+1+28-30+17=21
日干支=-17+34+21=38辛丑
7.王安石1021.12.18(辰時生)(儒略曆)
10 ->13-15*2=-17,平年
21 ->20 ->40+5=45
12月,6+28+18=52
日干支=-17+45+52=85 ->25戊子
8.蘇軾1037.1.8(卯時生)(儒略曆)
10 ->13-15*2=-17,平年
37 ->36 -> 9
1月,8
日干支=-17+9+8=0 ->癸亥
9.秦檜1091.1.17(午時生)(儒略曆)
10 ->13-15*2=-17,平年
91 ->90 ->30+22=52
1月,17
日干支=-17+52+17=52乙卯
10.岳飛1103.3.31(巳時生)(格里曆)
11 ->15-3*2-16*3=-39,平年
3 ->2 ->10
3月,1+28-30+31=30
日干支=-39+10+30=1甲子
11.朱熹1130.10.18(午時生)(儒略曆)
11 ->13-15*3=-32,平年
30 ->29 ->25+7=32
10月,5+28+18=51
日干支=-32+32+51=51甲寅
12.成吉思汗1155.5.1(午時生)(格里曆)
11 ->15-3*2-16*3=-39,平年
55 ->54 ->30+13=43
5月,2+28-30+1=1
日干支=-39+43+1=5戊辰
13.文天祥1236.6.6(子時生)(儒略曆)
12 ->13,閏年
36 ->35 ->55+8=63 ->3
6月,3+29+6=38
日干支=13+3+38=54丁巳
14.劉伯溫1311.7.1(午時生)(儒略曆)
13 ->13-15=-2,平年
11 ->10 ->50+2=52
7月,3+28-30+1=2
日干支=-2+52+2=52乙卯
15.明成祖1360.5.2(酉時生)(儒略曆)
13 ->13-15=-2,閏年
60 ->59 ->55+14=69 ->9
5月,2+29-30+2=3
日干支=-2+9+3=10癸酉
16.洪承疇1593.10.16(戌時生)(格里曆)
15 ->15-3*3-16*3=-42,平年
93 ->92 ->40+23=63 ->3
10月,5+28+16=49
日干支=-42+3+49=10癸酉
17.鄭成功1624.8.28(格里曆)
16 ->15-3*4=3,閏年
24 ->23 ->55+5=60 ->0
8月,4+29+28=61 ->1
日干支=3+1=4丁卯
18.清聖祖1654.5.4(辰時生)(格里曆)
16 ->15-3*4=3,平年
54 ->53 ->25+13=38
5月,2+28-30+4=4
日干支=3+38+4=45戊申
19.和坤1750.9.30(午時生)(格里曆)
17 ->15-3*4-16=-13,平年
50 ->49 ->5+12=17
9月,4+28-30+1+30=33
日干支=-13+17+33=37庚子
20.蔣宋美齡1898.3.4(寅時生)(格里曆)
18 ->15-3*4-16*2=-29,平年
98 ->97 ->5+24=29
3月,1+28-30+4=3
日干支=-29+29+3=3丙寅
21.余登發1904.9.21(午時生)(格里曆)
19 ->15-3*4-16*3=-45 ->15,閏年
4 ->3 ->15
9月,4+29-30+1+21=25
日干支=15+15+25=55戊午
22.2001.9.13(格里曆)
2000,以2001年判斷平年,以2000年計算日干支
日干支=4+28+1-30+13=16己卯
23.2001.12.28(格里曆)
2000
日干支=6+28+28=62 ->2乙丑
結語:以上計算解決了推算日干支的難題,如再製成表格,按表推算亦屬簡易,
等有空時再來打字.謝謝捧場.近道敬上2001,9,13
_________________________
二由一有,一亦莫守;一心不生,萬法無咎。
⋯⋯恭錄自禪宗三祖僧璨信心銘
近道