农历天干地支算法ykhi

干支纪年法一.十支纪年是我国传统的纪年方法。1.干和支的含义:干支是天干,地支的合称。干指天干,共有10个符号:12345678910甲乙丙丁戊己庚辛壬癸支指地支,共有12个符号:123456789101112子丑寅卯辰巳午未申酉戌亥

2.干和支组合后用于纪年。即:将十天干和十二地支按顺序搭配组合成干支,用于纪年。按此排法,当天干10个符号排了六轮与地支12个符号排了五轮以后,可构成60干支。续排下去又将恢复原状,周而复始,即如民间所说“六十年转甲子”。

根据“六十年甲子(干支表)”的公元年对应进行向上或朝下地反推。如:《辛亥革命》的辛亥年是1911年(48号干支),《戊戌变法》的戊戌年为35号干支,比辛亥年早13年,则“1911-13=1898”故《戊戌变法》是1898年。应用公元年进行计算。应用公元年的某一年,聊以60(指六十年甲子),余数小于60,再用余数减去3(干支纪年是从公元4年开始使用的),便知。如2002年:2002÷60,余数为22,再22-3,得数是19,查六十年甲子(干支表)19号干支,得知是壬午年。

三.结合实际了解“十二地支”1.用十二种动物分别与十二地支相配成为“十二生肖年”。(见下图)如凡是含有“子”的干支年,就是“鼠年”,这一年里出生的人都是属“鼠”;凡是含有“丑”的干支年就是“牛年”,这一年进而出生的人都是属“牛”。以此类推。(如下表)十二生肖年123456789101112子鼠丑牛寅虎卯兔辰龙巳蛇午马未羊申猴酉鸡戌狗亥猪

2.以十二地支来表示十二时辰。一日有二十四小时,而我国传统则以十二个时辰来表示,即一时辰是二小时。(如下表)

二十四小时和十二时辰对照表子丑寅卯辰己23-01:01-03:03-05:05-07:07-09:09-11午未申酉戊亥11-13:13-15:15-17:17-19:19-21:21-23

甲子0乙丑1丙寅2丁卯3戊辰4己巳5庚午6辛未7壬申8癸酉9甲戌10乙亥11丙子12丁丑13戊寅14己卯15庚辰16辛巳17壬午18癸未19甲申20乙酉21丙戌22丁亥23戊子24己丑25庚寅26辛卯27壬辰28癸巳29甲午30乙未31丙申32丁酉33戊戌34己亥35庚子36辛丑37壬寅38癸卯39甲辰40乙巳41丙午42丁未43戊申44己酉45庚戌46辛亥47壬子48癸丑49甲寅50乙卯51丙辰52丁巳53戊午54己未55庚申56辛酉57壬戌58癸亥59

该表于公元前后的推算均适用,具体的方法如下:

1,求公元后某年(设为Y)的干支。方法是:先以Y除以60得出余数,然后再减去4,最后根据所得结果查表一中相应序数所对应的干支即为该年的干支。

例如求公元1911年的干支:1911÷60余数为51,减4后得47,查表一47对应的干支是辛亥,即1911年为辛亥年。由于干支纪年60年一循环,当Y÷60的余数小于4时,需借干支纪年的一个周期60之数,例如1981年除以60余数为1,直接减4不够减,加上60之后再减4等于57,查表一便知1981年为辛酉年。余可类推。

2,求公元前某年(设为X)的干支。方法是:先以X除以60求其余数,再用57减去所得余数,根据所得结果再查表一中对应的干支,即为该年的干支。

例如求公元前221年的干支:221÷60,余数是41,以57-41=16,查表一16对应的是庚辰,即公元前221年对应的干支应为庚辰。同样由于干支纪年的循环周期为60年,当余数大于57时,也需再借60。例如求公元前479年(孔子卒年)的干支:479除以60余59,用57减59不够减,加上60之后再减59等于58,查表一知该年对应的干支为壬戌。其余可以类推。

上述方法简便易行,只要记住表一,就完全可以不用纸笔,直接由心算推出结果。

五、速查干支农历纪月法

其方法为:若遇甲或己的年份,正月是丙寅;遇上乙或庚之年,正月为戊寅;遇上丙或辛之年,正月为庚寅;遇上丁或壬之年,正月为壬寅;遇上戊或癸之年,正月为甲寅。依照正月之干支,其余月份按干支推算即可。详见下表:

由上可见,农历的月份,地支是固定的,天干却不固定,要经过推算才能排出。注意:农历的闰月是不记干支的。例如:2006年为‘丙戌’年,查天干年份为‘丙’子头,在上表的第三行,其正月为庚寅,二月为辛卯,三月为壬辰,余类推。

六、速查干支纪日法从已知日期计算干支纪日的公式为:

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

其中C是世纪数减一,y是年份后两位,M是月份,d是日数。1月和2月按上一年的13月和14月来算。奇数月i=0,偶数月i=6。G除以10的余数是天干,Z除以12的余数是地支。计算时带[]的数表示取整。

例如:查2006年4月1日的干支日。将数值代入计算公式。G=4*20+[20/4]+5*06+[06/4]+[3*(4+1)/5]+1-3=117除以10余数为7,天干的第7位是‘庚’。Z=8*20+[20/4]+5*06+[06/4]+[3*(4+1)/5]+1+7+6=213除以12余数为9,地支的第9位是‘申’。答案是:2006年4月1日的干支日是庚申日。

THE END
1.农历天干地支算法源代码大全(javascriptvbscriptC#flashC++C农历天干地支算法源代码大全 (javascript、vbscript、C#、flash、C++、C等等) WonSoft编 文章提供计算农历天干地支及当年属相的算法源程序,使用的语言为Javascript、VBScript、C#等。 一、C# 代码(1): 原来还准备自己写算法,并研究农历规则。发现那太难和麻烦了,光是农历的推算那就我等专门研究历法的人一下搞懂的。https://blog.csdn.net/wonsoft/article/details/3431374
2.天干地支纪年法天干地支纪年法(干支纪年法)是中国历法上自古以来就一直使用的纪年方法。该纪年法把干支顺序相配正好六十为一周,周而复始,循环记录,这就是俗称的“干支表”。干支纪年以每年立春换年。其中天干包括甲、乙、丙、丁、戊、己、庚、辛、壬、癸,地支包括子、丑、寅、卯、https://baike.sogou.com/v8268424.htm
3.天干地支计算方法这里介绍种简易直观的算法。 首先给每个天干、地支一个编号, 从头以4开始循序排下去,天干10后接1,地支12后接1。 天干:甲4、乙5、丙6、丁7、戊8、己9、庚10、辛1、壬 2、癸3 地支: 子4、丑5、寅6、卯7、辰8、巳9、午10、未11、申12、酉1、戌2、亥3 https://www.jianshu.com/p/9706cf1ec993
4.android计算dbfsAndroid计算天干地支killads的技术博客农历天干地支算法源代码大全(javascript、vbscript、C#、flash、C++、C等等) WonSoft编 文章提供计算农历天干地支及当年属相的算法源程序,使用的语言为Javascript、VBScript、C#等。 一、C# 代码(1): 原来还准备自己写算法,并研究农历规则。发现那太难和麻烦了,光是农历的推算那就我等专门研究历法的人一下搞懂的。后https://blog.51cto.com/u_14731/11720232
5.日柱公式是什么日柱干支推算口诀日柱公式为,{(公元年数-1)×5+(公元年数-1)÷4+当年日数} ÷60。将所得余数÷10,得出的余数作为天干序数;将所得余数÷12,得出的余数作为地支序数。 日柱干支推算口诀 1、农历日干支推算口诀 大小月卦记心间,正一干支起根源。 大后干同地支冲,小后干支退一天。 https://www.k366.com/bazi/193937.htm
6.1.农历年月日时推法及月份天干地支对照表农历年份推算法: 方法二: 首先要能记住十大天干和十二地支, 十天干:甲、乙、丙、丁、戊、己、庚、辛、壬、癸; 十二地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥; 天干地支纪年法首先是天干在前,地支在后,比如今年2005就为-乙酉年。 天干算法:4、 5、 6、 7、 8、 9、 0、 https://m.wang1314.com/doc/webapp/topic/21152424.html?ivk_sa=1024320u
7.生辰八字的天干怎么算,天干地支的推算与运用天干地支分别是什么如下图所示。年干支算法,方法1:公式法,公式为(当年年数-3)÷60,其余数为所求年干支的数,再到六十环周图中找出相应的干支。例子:(-3)÷60=33···34,在六十环周图中找到34对应的干支,可知年为丁酉年。下图为六十环周图。年干支算法,方法2:已知某年年干支,根据六十环周图次序推算。例http://www.perfectmusic.cn/8/ztejb/