何守元
摘 要: 本文應(yīng)用數(shù)論的同余理論和高斯函數(shù),建立計算任意給定的公元m年n月k日星期數(shù)的數(shù)學(xué)模型.
關(guān)鍵詞: 計算 星期幾 數(shù)學(xué)模型
要求幾十天后是星期幾,只需計算被7除所得余數(shù)即可.但要求任意的公元m年n月k日是星期幾,就比較麻煩.因為有閏年,需要建立一個便于計算的數(shù)學(xué)模型.
公元1600年以來,全世界大部分地區(qū)都使用現(xiàn)行公歷歷法.平年有365天,二月有28天.閏年則有366天,二月有29天.除二月外,平年、閏年的其他月份,小月各有30天,大月各有31天.閏年的確定:公元年份數(shù)能被4整除但不能被100整除,或者能被400整除,這些年份為閏年,其他均不閏.如果某年是閏年,其二月比平年的二月多一天,從該年的三月一日開始,星期數(shù)都受到影響,但一月、二月里的星期數(shù)不受影響.因此,我們把三月一日作為計算星期數(shù)的基點(diǎn).為討論方便,先約定記號:
m=100x+y表示年份,其中0≤y≤99;n表示月份,3≤n≤14,其中n=13表示m+1年的1月,n=14表示m+1年的2月;k表示日期,w(m,n-2,k)表示公元m年n月k日的星期數(shù).分三步建立數(shù)學(xué)模型:
第一步:先建立“計算公元m年3月1日星期數(shù)”的數(shù)學(xué)模型.要找到從1600年起使用的計算w(m,3-2,1)即“公元m年3月1日的星期數(shù)”的公式,先假設(shè)w(1600,3-2,1)是已知的,由數(shù)論知識知:365≡1(mod7),故每過一個平年,星期數(shù)就增加1;每過一個閏年,星期數(shù)就增加2.若用s表示從公元1600年到公元m年的閏年數(shù),立得:w(m,3-2,1)≡w(1600,3-2,1)+(m-1600)+s(mod7).(1)
由閏年的確定方法,根據(jù)數(shù)論中高斯函數(shù)的定義知:
(其中:m=100x+y)(5)
第二步:再建立“計算公元m年n月1日星期數(shù)”的數(shù)學(xué)模型.注意到本文開頭n的取值約定,考慮到大、小月天數(shù),容易知道m(xù)年其余各月的星期數(shù):
4月1日的星期數(shù)為:w(m,4-2,1)≡w(m,3-2,1)+3(mod7);5月1日的星期數(shù)為:w(m,5-2,1)≡w(m,4-2,1)+5(mod7);6月1日的星期數(shù)為:w(m,6-2,1)≡w(m,5-2,1)+8(mod7);7月1日的星期數(shù)為:w(m,7-2,1)≡w(m,6-2,1)+10(mod7);8月1日的星期數(shù)為:w(m,8-2,1)≡w(m,7-2,1)+13(mod7);9月1日的星期數(shù)為:w(m,9-2,1)≡w(m,8-2,1)+16(mod7);10月1日的星期數(shù)為:w(m,10-2,1)≡w(m,9-2,1)+18(mod7);11月1日的星期數(shù)為:w(m,11-2,1)≡w(m,10-2,1)+21(mod7);12月1日的星期數(shù)為:w(m,12-2,1)≡w(m,11-2,1)+23(mod7),
而m+1年1月1日的星期數(shù)為:w(m,13-2,1)≡w(m,12-2,1)+26(mod7),
m+1年2月1日的星期數(shù)為:w(m,14-2,1)≡w(m,13-2,1)+29(mod7).
由上可知,從m年3月1日到m+1年2月1日的11個月中,星期數(shù)“增加”了29天,平均每月“增加”約2.6天.構(gòu)造高斯函數(shù):f(n-2)=[2.6(n-2)-0.2]-2,經(jīng)過驗證,發(fā)現(xiàn)它完全滿足這些條件:f(3-2)=0,f(4-2)=3,f(5-2)=5,…,f(14-2)=29.從而得到“計算公元m年n月1日星期數(shù)”的數(shù)學(xué)模型:w(m,n-2,1)≡w(m,3-2,1)+[2.6(n-2)-0.2]-2(mod7).
第三步:最終建立“計算m年n月k日星期數(shù)”的數(shù)學(xué)模型.顯然,m年n月k日的星期數(shù)是:w(m,n-2,k)≡(m年n月1日的星期數(shù))+(k-1)≡w(m,3-2,1)+[2.6(n-2)-0.2]+(k–3)(mod7),由(5)式,立得“計算m年n月k日星期數(shù)”的數(shù)學(xué)模型:
w(m,n-2,k)≡k+5x+y+[2.6(n-2)-0.2](mod7) (6)
(m=100x+y,3≤n≤14,其中:n=13表示m+1年的1月,n=14表示m+1年的2月.)
特別注意:①計算公元m年1月k日和2月k日的星期數(shù)(即n=13,14)時,(6)式中的年份數(shù)要用m-1,而不是m.②公式中的中括號表示高斯函數(shù),其值取整數(shù)部分.
例問:公元2018年2月24日是星期幾?
解:因為2月對應(yīng)n=14,所以對應(yīng)的年份數(shù)m=2018-1=2017,x=20,y=17,k=24,代入(6)式,得:
w(2017,14-2,24)≡24+5×20+17+[2.6×(14-2)–0.2]≡6(mod7),
即2018年2月24日是星期六.
參考文獻(xiàn):
[1]王進(jìn)明主編.初等數(shù)論[M].人民教育出版社,2002.12,第一版.