天干:甲、乙、丙、丁、戊、己、庚、辛、任、归,合称“十天干”。他们分为五甘阳和五阴干。
地支:子、丑、阴、卯、辰、巳、午、卫、申、酉、戌、海,合称为“十二地支”,分为6阳支和6阴支。
甲为天干始,子为地支始,天干在上,地支在下,甲子一致,丑一致,其余依次一致,称为“甲子”。在古代,甲子被用来标记年、月和日。
天干数十,阴阳合五,地支数十二,阴阳合六,天干转六圈,地支转五圈,故又称“六十甲子”。
周期表:
贾筹兵银丁卯吴任申贵由
贾海丙子丁丑毛辛四仁吴桂伟
沈嘉易友兵许定吴海子丑耿殷新毛任晨鬼丝
吴佳译沈定友,戊戌变法,纪海庚酬仁银桂茂
陈佳、贝斯、丙午丁、戊申、姬友、耿旭、辛海、壬子、癸丑
贾殷、茅毅、陈兵、丁思、吴武和心有还没有申请这个职位,他们都失败了。
算法思路:
甲子组合的规则是按照原来的分支顺序,五阳分支配六阳分支,五阴分支以六阴分支为主。结果合起来60支(或甲子),甲子一周。观察上表可以发现,天干地支组合依次往下,形成一个循环,直到天干转六圈,地支转五圈。
有了甲子周期表,用天干地支日历年,日历月,日历日就方便多了。
年度主干-分支外推算法
中国早就用枯枝记录岁月,一直沿用至今。有人把甲子元年定在公元前2696年。与公元相比,公元四年甲子年正好是农历甲子年,所以他们把公元的数字减去3,再除以60。小费是混的?猪鬃疥疮?嘿,哈默?你妈妈叫什么名字?轿车?
(所需年数-3)/60 =商。。。余数(年度分支序数)
如果余数等于0,则在词干序数上加60。
比如,求农历1983的干、支的年龄:(1983-3)/60 = 30。。。0,则0+60 = 60(支序数),查表为癸亥年。
每月分行扣款算法:
当一年的干燥度为A或已经时,正月的干燥度为C;
2008年天干为B或G时,正月天干为E;
2008年天干为丙或辛时,正月天干为克;
2008年天干为丁或任时,正月天干为任;
当2008年的天干是戊或癸时,正月的天干是甲..
首先计算出当年农历正月的天干,其他月份可以根据天干的顺序号类推。当年正月天干流水号的计算方法是:取当年余数除以5,减2,乘2,减1。当数字为负数时,加10。
例:求公元1991(农历韦辛年)正月天干:1991/5=398+0,天干的序号为(1-2) x 2-1。二月为辛卯,三月为仁辰,以此类推。
每日中继推送算法
因为农历月份的大小没有一定的规律可循,所以无法用简单的方法计算出农历的日期。因此,计算农历日期的较好方法是使用日历。
虽然农历的大小是不固定的,而且农历每四年有一个闰月(二月),但每年的大小月份都是固定的,所以我们可以从阳历中推算出一天的支和支,计算公式为:
日干燥度=(元旦日干燥度序数)+(所需天数)+(各月日干燥度加减,闰年三月后加1)/10
=商...余数(每日序数)
日支=(元旦地支序数)+(所需天数)+(各月加减天数,闰年三月后加1)/12。
=商...余数(地支序数)
按照上面的方法,有两个数要计算后才能代入公式,即元旦干支序数,每月干支加减数。
天干地支加减表:
每月天干地支常数加减表
平年闰年
天干地支,天干地支
一月减一减一减一减一减一减一减一。
二月加零加六加零加六
三月减二加十加一加一。
四月减一加五加一加一。
五月减一减一加一加一。
六月加零加六加一加一。
七月加零加零加一加一。
八月加一加七加一加一。
九月加二加二加一加一。
十月加二加八加一加一。
11月加三加三加一加一。
十二月加三加九加一加一。