公曆日子與陰曆干支互換演算法

  我國是個陰、陽曆並行的國家,各有所用,不可偏廢。陽曆某日期屬陰曆何干支?長期以來,一直困擾著人們!能否找出陰陽之間內在聯繫,發現其間固有規律,找出其間計算公式,一直是我關心的問題。通過潛心研究,終於得出「陽日陰乾互換公式」。陰、陽關係,雖有《萬年曆》可查,但十九世紀以前的就少見難查了。為弘揚祖國傳統文化,願公示與大家分享。此公式的關鍵是將「干支」數字化,是在「陽日陰乾換算」及「世紀調節閥」的基礎上演變而來,詳述如下:  設:公元年數末兩位數為X;修正值為Y(單月)或Y+30(雙月);調節閥為Z;陽曆日期為R;商為n;餘數為m;(餘數即干支)。

  一、陽日變陰乾

  公式:(X﹒5+X÷4+R+Y+Z)÷60=n······m  例題:問陽曆2014年10月1日為陰曆何干支?  解:已知X=14,R=1Y=4+30(雙月),Z=54,  (14×5+14÷4+1+34+54)÷60=n······m  (70+3+89)÷60=n······m  162÷60=2······4242即乙巳。  答:陽曆2014年10月1日,陰曆干支為乙巳日。

  二、陰乾變陽日

  公式:X﹒5+X÷4+R+Y+Z=60n+m  例題:問陰曆2014年九月初八為乙巳日,求陽曆是幾月幾日?  解:已知陰曆為九月,初八日乙巳值m=42,Y=4+30(偶月),Z=54,  設:陽曆為10月R日,(因陽曆月份始終比陰曆月份多1.故為十月)  (14×5+14÷4+R+34+54)=60n+42  73+R+88=60n+42  R=60n—119(n取最小值2)  R=120—119  R=1  答:陰曆九月乙巳日,陽曆為10月1日。

  再例陽變陰:  已知毛澤東生日是公元1893年12月26日,問陰曆是何日干?  解:已知R=26,修正值Y=30+5,十九世紀調節閥Z=25,m=日干支  (93×5+93÷4+26+35+25)÷60=n······m  (465+23+86)÷60=n······m  574÷60=9······34【34即丁酉日】  答:毛澤東生日是丁酉日。詳細為陰曆1893年11月19日。

  再例陰變陽:  已知毛澤東生日是陰曆1893年11月19日(丁酉),問陽曆是幾月幾日?  解:已知陰曆為11月,19日丁酉值m=34,Y=30+5,Z=25,  設:陽曆為12月(11+1),日為R,  (93×5+93÷4+R+35+25)=60n+34  R=60n—514  R=60×9—514(n取9)  R=26  答:陰曆11月丁酉日,陽曆是12月26日。

  (周易文摘博客,作者: wsq5312


推薦閱讀:

LintCode/LeetCode 概括總結全集
Leetcodes Solution 3 Longest Substring Without Repeating Characters
九章演算法 | Google、Airbnb、Facebook面試題 : 外星人的字典(Alien Dictionary)
021 Merge Two Sorted Lists[E]
時干支推演算法

TAG:演算法 | 陰曆 | 公曆 | 干支 | 算法 |