公历日干支计算法

公历日干支计算法

知道公历日期就可以快速计算得到当天的日干支是多少的。

从1601年起被4除尽的是闰年,整百被400除尽是闰年,

公元1601年1月1日干支是丁卯 卯1丁1顺

天干丁1戊2己3庚4辛5壬6癸7甲8乙9丙10

地支卯1辰2巳3午4未5申6酉7戌8亥9子10丑11寅12

注意10,12是除尽无余数

干支基数=5*(y-1601)+(y-1601)/4-(y-1601)/100+(y-1601)/400+r

y是1601年起的所求年数

r是所求日是从当年的1月1日起的总天数

用所得的干支基数与10相除求余数从丁1戊2...丙10得天干

用所得的干支基数与12相除求余数从卯1辰2...寅12得地支

比如2000年12月31日干支是多少?

5*(2000-1601)+(2000-1601)/4-(2000-1601)/100+(2000-1601)/400+366

=5*399+99-3+0+366

=2457

2457%10=7 癸

2457%12=9 亥

比如2001年3月7日干支是多少?

5*(2001-1601)+(2001-1601)/4-(2001-1601)/100+(2001-1601)/400+31+28+7

=2163

2163%10=3 己

2163%12=3 巳

比如2021年3月17日干支是多少?

5*(2021-1601)+(2021-1601)/4-(2021-1601)/100+(2021-1601)/400+31+28+17

=5*420+420/4-420/100+420/400+31+28+17

=5*420+105-4+1+31+28+17

=2278

2278%10=8  甲

2278%12=10 子

公元5年到公元1600年,是每四年闰一日在2月

干支基数为=5*(y-5)+(y-5)/4+r

y是5年起的所求年数

r是所求日是从当年的1月1日起的总天数

用所得的干支基数与10相除求余数从戊1己2...丁10得天干

用所得的干支基数与12相除求余数从戌1亥2...酉12得地支

比如1200年3月4日干支是多少?

5*(1200-5)+(1200-5)/4+31+29+4

=6337

6337%10=7 甲

6337%12=1 戌

公元5年之前的历法在现代的历书中与实际的有出入。

干支基数公式暂时不提供。

对应在没有万年历或无法翻阅万年历的时候,掌握公历日干支计算得到日干支是有一定帮助作用的。

比如某人报说他高祖出生于公历1901年3月26日丑时

不用翻历书就可以自动得出四柱对应的干支是多少的:

庚0辛1...戊8己9得1901是辛年

(1901-3)%12 余2 子1丑2...戌11亥12 得1901是丑年

1901就是辛丑年

3月26日在惊蛰和清明之间是卯月,丙辛遁月从庚寅起,卯月是辛卯

3月26日干支基数是=5*(1901-1601)+(1901-1601)/4-(1901-1601)/100+(1901-1601)/400+31+28+26=1500+75-3+0+31+28+26=1657

1657%10=7 丁1戊2...癸7 得日天干是癸

1657%12=1 卯1辰2...      得日地支是卯

3月26日时癸卯 戊癸遁时从壬子起,丑时是癸丑

也就是高祖1901年3月26日丑时 对应的干支时间就是  辛丑年辛卯月癸卯日癸丑时 天干地支连珠格

这样就不用翻历书就得到干支相关的信息了。

附之前掌握的日干支计算公式

日干支公式

  G = 4C + [C / 4] + 5y + [y / 4] + [3 * (M + 1) / 5] + d - 3

  Z = 8C + [C / 4] + 5y + [y / 4] + [3 * (M + 1) / 5] + d + 7 + i

c是世纪减一,y是年后两位,M是月,d是日,奇数月i为0偶数月i为6

1和2月使用13,14来代替,因此C和y也要按上一年的年份来取值.

[]表示取整数

甲0子0顺

1720年5月6日

4*17+[17 / 4] + 5*20 + [20 / 4] + [3 * (5 + 1) / 5] + 6 - 3 = 3

8*17+[17/4]+5*20+[20/4]+[3*(5+1)/5]+6+7+0=9

日干支就是丙申

1720年5月26日

4*17+[17/4]+5*20+[20/4]+[3*(5+1)/5]+26-3 = 3

8*17+[17/4]+5*20+[20/4]+[3*(5+1)/5]+26+7+0= 5

日干支就是丙辰

1981年5月6日

4*19+[19/4]+5*81+[81/4]+[3*(5+1)/5]+6-3 = 1

8*19+[19/4]+5*81+[81/4]+[3*(5+1)/5]+6+7+0= 9

日干支就是甲申

2009年3月14日

4*20+[20/4]+5*9+[9/4]+[3*(3+1)/5]+14-3 = 5

8*20+[20/4]+5*9+[9/4]+[3*(3+1)/5]+14+7+0= 7

日干支是戊午

2020年2月14日

4*20+[20/4]+5*19+[19/4]+[3*(14+1)/5]+14-3 = 4

8*20+[20/4]+5*19+[19/4]+[3*(14+1)/5]+14+7+6= 0

日干支是丁亥

也可以用如下公式来计算

乘五除四基加日

双月应需加三十

一二自加闰少一

经几大月多加几

一月不算在大月

平一加一闰不加

平二加二闰加一

三不加四五加一

六七加二八加三

九十加四余加五

一月不计算在大月内,一月加一,二月加二,闰年一月不加,二月加一

三月不加,四五月加一,六七月加二,八月加三,

九十月加四,十一十二加五

双月多加三十

1800-1899 基数25

1900-1999 基数9

2000-2099 基数54

2100-2199 基数39

1802年1月10日

2*5+2/4+25+10=45

45+1=46

46-10=6

46-12=10

日干支是己酉

2012年1月10日

12*5+12/4+54+10=7

日干支是庚午

1802年5月6日

2*5+2/4+25+6=41

41+1=42

42-10=2

42-12=6

日干支是乙巳

1802年9月6日

2*5+2/4+25+6=41

41+4=45

45-10=5

45-12=9

日干支是戊申

也可以用如下公式来计算

1900----1999年日干支基数=(年尾二位数+3)×5+55+(年尾二位数-1)/4

2000----2099年日干支基数=(年尾二位数+7)×5+15+(年尾二位数+19)/4(只用商数,余数不用,数过60就去掉60)。

2100----2199年日干支基数=(年尾二位数+11)*5+39+(年尾二位数+20)/4

然后用得到日干支基数+所求日的所有天数

1981年5月6日

((81+3)*5+55+(81-1)/4)=15

15+31+28+31+30+6=21

21-10=1

21-12=9

日干支是甲申

2009年3月14日

((9+7)*5+15+(9+19)/4)=42

42+31+28+14=55

55-10=5

55-12=7

日干支是戊午

2020年2月14日

((20+7)*5+15+(20+19)/4)=39

39+31+14=24

24-10=4

24-12=0

日干支是丁亥

2020年3月8日

((20+7)*5+15+(20+19)/4)=39

39+31+29+8=47

47-10=7

47-12=11

日干支是庚戌

2101-5-6

((1+11)*5+39+(1+20)/4)=44

44+31+28+31+30+6=50

50-10=10

50-12=2

日干支是癸丑

2101-5-26

((1+11)*5+39+(1+20)/4)=44

44+31+28+31+30+26=10

10-10=0

10-12=10

日干支是癸酉

2102-3-8

((2+11)*5+39+(2+20)/4)=49

49+31+28+8=56

56-10=6

56-10=8

日干支是己未

2111-5-6

((11+11)*5+39+(11+20)/4)=36

36+31+28+31+30+6=42

42-10=2

42-12=6

日干支是乙巳

2112-3-8

((12+11)*5+39+(12+20)/4)=42

42+31+29+8=50

50-10=0

50-12=2

日干支是癸丑

2130-2-14

((30+11)*5+39+(30+20)/4)=16

16+31+14=1

日干支是甲子

(0)

相关推荐

  • 掐指道来——掌上万年历

    对于易学爱好者来说,如何快速推算求测者出生年.月.日.时的干支来,也是见功力的一个方面.尽管智能时代到来,在手机上轻松就能查到.然而在临场众目睽睽之下,你掐指一算,娓娓道来,方显大师风范

  • 不用看日历就知道今天的日干支计算法

    它的口诀是: 一月五月均减一, 十月加二又加八. 二月六月加零六. 十一月双加三数偶. 三月减二另加十, 十二月加三再加九. 四月减一加五后, 此是平年干支守. 七月为零九加二, 闰年注意二月后. 八 ...

  • 推算日干支,有按公历和农历两种方法推算

    推算日干支,有按公历和农历两种方法推算 黄远珦 2018年8月2日 一.农历日干支推算口诀: (方法一) 大小月卦记心间, 正一干支起根源.   大后干同地支冲, 小后干支退一天.   初一十三二十五 ...

  • 公历推算日干支方法

    公历推算日干支方法公历推算日干支方法.首先确定每年元旦的干支:  公式(1):本年元旦干支=去年(平年)元旦干支+5:  公式(2):本年元旦干支=去年(闰年)元旦干支+6:  例如:1983年为平年 ...

  • 日干支相克者,夫妻关系不和谐?

    原创 / 小诺老师 我是云南丽江人,生于公历1984年7月4日,时辰可能在晚上十点十一点左右.2005年毕业后前期发展较好,之后认识我前夫并于2008年结婚,就不顺了. 2009年我生了女儿,2013 ...

  • 2020年:月、日干支对照表

    2020年:月、日干支对照表

  • 八字神煞看读书运 —— ​八字日干支学业神煞

    望子成龙盼女成凤是每一个父母的心愿,但是谁知道孩子读书的天赋是天生的,有的孩子怎么努力都学习差,"天生我材必有用",读书也不一定就是人生的出路. 但是读书会提高人的修养和内涵,会增 ...

  • 全部是干货,不用万年历手掌推算流日干支,记得收藏

    全部是干货,不用万年历手掌推算流日干支,记得收藏

  • 时间时辰 五行纪日干支

    时间时辰 五行纪日干支 甲己 乙庚 丙辛 丁壬 戊癸 23-01 子/水 甲子 丙子 戊子 庚子 壬子 01-03 丑/土 乙丑 丁丑 己丑 辛丑 癸丑 03-05 寅/木 丙寅 戊寅 庚寅 壬寅 甲 ...

  • 速推日干支口诀

      通过五鼠遁.五虎遁,大家可以快速推出时干支与月干支,那么以下的方法可以在不使用万年历的前提下,推出日干支.这种方法相对比较难记,但是功夫不负有心人,真想在易学之路有所成就,就要付出比别人多得多的努 ...