其實本文的主題應該稱為星期的計算,通常萬年曆需要計算特定日子是星期幾,由於我們的年曆有閏年平年,雖然閏年看似規則變化,但是每月日期不一,難以用一個數學式表達,近日從維基百科查得 蔡勒公式 (Zeller's congruence),算是一個簡單的方法,而且這題目也適合給初學程式設計者練習,因此收錄。
w 星期,等於 0 時表示星期天
c 西元年前兩位 (千百位)
y 西元年後兩位 (十個位)
m 月份,取值範圍為3至14,1、2月要看作上一年的13、14月來計算,
例如2003年1月1日要看作2002年的13月1日來計算,此時西元年份要減一
d 日期
[] 高斯符號,代表向下取整數,取不大於原數的最大整數。
mod 取餘數
若要計算的日期是在 1582 年 10 月 4 日或之前,公式則為
一局精彩的混亂時鐘局面
-
一般我們的直覺都是先用11把4吃掉,但是不適用於本局。 因為當乙方用11把4吃掉,而後對方用3把7吃掉之後,乙方的10就很難逃脫了。
隨後我發現,7是一個非常重要的棋子,它將在本局發揮關鍵作用。 試演如下: 未完待續
12 小時前
沒有留言:
張貼留言