天干地支算法(天干地支的数学表示及其算法)
天干地支的数学表示
基本知识
干支纪年,是指中国纪年历法,自上古以来就一直使用的纪年方法。干支是天干和地支的总称。把干支顺序相配正好六十为一周,周而复始,循环记录,这就是俗称的“干支表”。
基本背诵知识:
天干:甲、乙、丙、丁、戊、己、庚、辛、壬、癸
地支:子鼠、丑牛、寅虎、卯兔、辰龙、已蛇 、午马、未羊、申猴、酉鸡、戌狗、亥猪。
分析下图的表,实际上和余数是息息相关的。数学中会定义等价类,例如模2的类,只有两个元素0,1,对应2和0的余数相等,所以他们是同一类。
数学知识
问题1:为什么以60为一个周期?因为10和12的最小公倍数是60.
基础知识:减去3除以60得到对应的60之内的数目。
问题2:如何推断今年2021年是什么年?
(2021-3)/60 = 33......38
然后有下面的计算
38/10 =3......8
38/12 =3......2
可知天干8对应的数:辛,地支2对应的数:丑,对应的是牛年。
问题3:已知小明知道辛亥革命发生在1900-1945年之间?求具体在哪一年?
3年为甲子年,对应的年份在1900-1945之间,最接近的是1863年甲子年,那么辛亥年
天干:辛,表示除以10的余数为8
地支:亥,表示能被12除尽,余数为0
根据这两个条件可知数为48,所以为1863+48=1911年。
问题4:你出生的那一年是什么年?假设你知道你的生肖和你的年龄?
以1995是什么年为例?
(1995-3)/60 = 33......12
12/10=1...2,表示天干,所以是乙
12/12=0...0,表示地支,所以是亥,原因是因为0和12是等价的,取模的情况下,是等价类。感兴趣的话,可以翻看近世代数的书本群一节。
综合起来就是乙亥年了。
历史常识
"辛酉政变", 1861年,对应的算法是58,58/10余数为8,58/12余数为10,从而对应的是辛酉年
"甲午战争",1894年,对应的算法是,31/10余数为1,31/12余数为7,从而对应的是甲午年。
“戊戌变法”:1898年,对应的算法是,35/10余数为5,35/12余数为11,从而对应的是戊戌年。
“庚子赔款”:1900年,对应的算法是,37/10余数为7,37/12余数为1,从而对应的是庚子年。
“辛丑条约”:1901年,对应的算法是,38/10余数为8,38/12余数为2,从而对应的是辛丑年。
“辛亥革命”:1911年,对应的算法是,48/10余数为8,48/12余数为0,从而对应的是辛亥年。