干支纪年,由10天干(甲、乙、丙、丁、戊、己、庚、辛、壬、癸)和12地支(子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥)按天地顺序两两组成,每60年一轮回,俗称一个甲子。需要用的时候,我们可以查万年历。但是万年历不能查万年,比如公元前得怎么办?比如夏商周得历法不一样怎么办?这里介绍几个简单算法,方便查询。
需要首先说明:干支的六十甲子计数不受夏商周的历法规则影响,只按时间算。
六十甲子顺序:
每个干支纪年的10天干在前,12地支在后,共两个字,天干地支分别按顺序依次排列,例如甲子、乙丑……直到末尾的癸亥,10和12的最小公倍数为60,所以每60年为一轮回,又回到甲子年。
第一种:算公元年,看下图:
由于公元元年为辛酉年,可以此为基础进行简算。规则为:将天干的“辛”定为1,往后为2、3等;将地支的“酉”定为1 ,往后为2、3等。公元年的尾数在天干中找出对应该尾数的天干;再将公元纪年除以12,用余数在地支中查出对应该余数的地支,这样就得到了公元纪年的干支纪年。如1911年,其尾数为1,对应的天干为“辛”;以12除1911得159,余数为3,对应的地支为“亥”,该年即为辛亥年。
第二种 :算公元前,看下图;
比如公元前 1年,尾数为1,对应的天干为” 庚“,再将1除以12得余数为1,对应的地支为”申“,则公元前1年为庚申年。比如公元前551年,计算后是庚戌年。
第三种:看下图:
记住哪一年的确切干支,然后顺序的做加法,倒叙的做减法,以60为一轮,就能查出干支。
甲子,其实是天干与地支按照一定规则组合而成的,天干与地支组合是第一个甲子年,每60年称为一个甲子。
天干:甲、乙、丙、丁、戊、己、庚、辛、壬、癸;
地支:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥;
生肖:鼠、牛、虎、兔、龙、蛇、马、羊、猴、鸡、狗、猪;
其中地支与生肖对应:子对鼠(子鼠),丑对牛(丑牛),......,亥对猪(亥猪);
60甲子
那么我们怎么知道哪一年是什么甲子年呢(公元前的计算就不介绍了)?
先看甲子年(60甲子中的第一个):计算公式:甲子年对应公历年计算公式:年份=60 x (甲子数)+4,如:60x0 + 4 = 4,即公元4年为甲子年;再如:60*34+4=2044,即公元2044年为甲子年,2044-60=1984也是甲子年。
那么我们就可以通过60甲子表倒推或正推得出哪一年是甲子年,如:公元2044年为甲子年,把生肖带上就是甲子鼠年。如果以1984为最近的甲子年,那么到下一个甲子年中,用年份-1983得到的数字就是甲子中对应的数字,如2023-1983=40,即2023年为癸卯兔年还可以用(年份-3)÷60得到的余数就是甲子中对应的数字,如(2023-3)÷60=33......40,即2023年为癸卯兔年。
我们还有没有其他的计算方法呢?
方法一:
手势法,比较繁琐,这里就不介绍了。
方法二:
天干:甲[1]、乙[2]、丙[3]、丁[4]、戊[5]、己[6]、庚[7]、辛[8]、壬[9]、癸[0];
地支:子[1]、丑[2]、寅[3]、卯[4]、辰[5]、巳[6]、午[7]、未[8]、申[9]、酉[10]、戌[11]、亥[0];
生肖:鼠[1]、牛[2]、虎[3]、兔[4]、龙[5]、蛇[6]、马[7]、羊[8]、猴[9]、鸡[10]、狗[11]、猪[0];
计算规则:天干(年份-3)÷10的余数,地支与生肖(年份-3)÷12的余数;
如2023年:2023-3=2020,2020÷10余数为0,对应天干中的癸(对应[]中的数字);2020÷12=168......4,对应地支中的卯(对应[]中的数字),对应生肖中的兔(对应[]中的数字);所以2023年为癸卯兔年。
方法三:
天干:甲[4]、乙[5]、丙[6]、丁[7]、戊[8]、己[9]、庚[0]、辛[1]、壬[2]、癸[3];
地支:子[4]、丑[5]、寅[6]、卯[7]、辰[8]、巳[9]、午[10]、未[11]、申[0]、酉[1]、戌[2]、亥[3];
生肖:鼠[4]、牛[5]、虎[7]、兔[7]、龙[8]、蛇[9]、马[10]、羊[11]、猴[0]、鸡[1]、狗[2]、猪[3];
计算规则:天干,年份÷10的余数,地支与生肖年份÷12的余数;
如2023年:2023÷10的余数为3,对应天干中的癸(对应[]中的数字),2023÷12的余数为7,对应地支中的卯(对应[]中的数字),对应生肖中的兔(对应[]中的数字),所以2023年为癸卯兔年。
其实方法特别多,具体看计算规则,有复杂的,有简单的;如个人觉得方法二和方法三要简单一些,方法一就要复杂一些,方法二可以理解为数组下标(编程思想);方法三,公元年的第一个甲子数是4。