干支紀年法的傳統演算法

  一.干支紀年是我國傳統的紀年方法。

  1.乾和支的含義:干支是天干,地支的合稱。

  干指天干,共有10個符號:

  甲 乙 丙  丁 戊 己  庚  辛 壬 癸

  支指地支,共有12個符號:

  子 丑  寅 卯 辰 巳 午 未 申 酉 戌 亥

  2.乾和支組合後用於紀年。即:將十天乾和十二地支按順序搭配組合成干支,用於紀年。按此排法,當天干10個符號排了六輪與地支12個符號排了五輪以後,可構成60干支。續排下去又將恢復原狀,周而復始,即如民間所說「六十年轉甲子」。

  二.結合實際了解「十二地支」

  1.用十二種動物分別與十二地支相配成為「十二生肖年」。(見下圖)如凡是含有「子」的干支年,就是「鼠年」,這一年裡出生的人都是屬「鼠」;凡是含有「丑」的干支年就是「牛年」,這一年進而出生的人都是屬「牛」。以此類推。(如下表)

  十二生肖年

  子鼠 丑牛 寅虎 卯兔 辰龍 巳蛇 午馬 未羊 申猴 酉雞 戌狗 亥豬

  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

  (二)干支紀年法的簡便演算法

  傳統的計演算法,必須知道一個已知年,然後往前後推算,有一定的難度,下面我給大家介紹一種干支紀年法的簡便演算法,每個字都有對應的一個符號。如下表:

  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 1 2 3

  虎 牛 鼠 兔 龍 蛇 馬 羊 猴 雞 狗 豬

  年份的最後一個數字就對應天乾的相應的字,然後用年份除以12所得的餘數,用這個餘數去找相對應的地支字和十二生肖字,於是天干地支字的組合便是干支紀年,對應的生肖字便是生肖紀年。如2006年,6對應的天干字是丙字,2006除以12的餘數是2,2所對應的地支字是戌字,所對應的生肖字狗字,所以2006年是丙戌年,狗年。1898年,8對應的天干字是戊字,18986除以12的餘數是2,2所對應的地支字是戌字,所對應的生肖字狗字,所以18986年是戊戌年,狗年。1911年,1對應的天干字是辛字,1911除以12的餘數是3,3所對應的地支字是亥字,所對應的生肖字豬,所以1911年是辛亥年,豬年。1901年,1對應的天干字是辛字,1901除以12的餘數是5,5所對應的地支字是丑,所對應的生肖字牛,所以1901年是辛丑年,牛年。

  所以,有了干支紀年法的簡便演算法,我們就方便的多了,如不信,快快試試看,一定會成功。


推薦閱讀:

記錄演算法
演算法 - 二叉樹遍歷的10種方法,你都會了么?(三)(非遞歸後序遍歷)
棧和隊列
今日頭條演算法原理(全)
知識盲區系列開篇

TAG:演算法 | 傳統 | 干支 | 算法 |