星期演算法
Ⅰ 求教星期的演算法!!!
推算星期數 我們知道,一星期有7個星期數,按星期一,星期二……星期日的順序排列,且每過7天,星期數就重復出現。而陽歷的月份中,最少的有28天,最多的有31天,因為28÷7=4,29÷7=4…1,30÷7=4…2,31÷7=4…3,所以平年2月份的7個星期數在該月各出現4次,閏年的2月份,2月1日那天的星期數在該月出現5次,其餘的6個星期數在該月各出現4次,小月(即有30天的月份)的1號,2號的星期數在該月各出現5次,其餘的5個星期數在該月各出現4次,大月(即有31天的月份)的1~3號的星期數在該月各出現5次,其餘的4個星期數在該月各出現4次。明白了這些道理,我們就比較容易解答近年來在各類競賽中出現的推算星期數的問題,下面略舉幾例說明。 例1 有一年二月份有5個星期日,這一年的「六一」兒童節是星期幾?(鄭州市中原區歷屆「中原之星」數學競賽題選) 解 已知二月份有5個星期日,所以這年的2月份有29天,且2月1日和2月29日都是星期日,從2月29日到6月1日要經過31+30+31+1=93(天),93÷7餘2,我們把星期日看作星期「0」,0+2=2,所以這一年的「六一」節是星期二。 例2 某年的三月份正好有4個星期三和4個星期六,那麼這年的3月1日是星期____。(小學數學奧林匹克A、B、C卷) 解 三月份是大月,有31天,所以這個月的1~3號這三天的星期數在該月各出現5次,當然這三個星期數是連續的,題目又告訴我們這個月有4個星期三和4個星期六,因此容易看出這個月的1~3號是星期日~星期二,所以這年的3月1日是星期日。 例3 某月星期日的天數比星期六多,這個月的10日是星期幾?(山東省1996年小學數學競賽試題) 解 按星期數的排列,星期日排在星期六的後面,如果出現某月星期日的天數比星期六多,那麼這個月的1號就一定是星期日且這個月的最後一天不是星期六(即這個月不是平年的2月份),也就是說如果某月的1號是星期日,且這個月有29~31天,就會出現這個月有5個星期日,4個星期六,星期日的天數多於星期六,由上面分析,容易算出這個月的10日是星期二。 例4 在某一個月中,星期一多於星期二,星期日多於星期六,那麼這個月的5號是星期____。(第七屆小學《祖沖之杯》數學邀請賽試題) 解 由對例3的分析,根據這一個月中,星期日多於星期六,即可推知這個月的5號是星期四,問題就解決了,但這道題卻還有一個題設條件;星期一多於星期二,按星期數的排列,星期一排在星期二的前面,如果某月的星期一多於星期二,則有三種情況:(1)這個月的1號是星期一,且這個月有29天;(2)這個月的2號是星期一,且這個月有30天;(3)這個月的3號是星期一,且這個月有31天,所以由某一個月中,星期一多於星期二這個題設條件,是不能確定這個月的5號是星期幾的,對這道試題的解答是不起作用的,因此,這道試題存在已知條件過剩,將有用條件和無用條件混雜在一起,形成干擾因素,這類試題就是近年來出現的開放型的問題,它的優點是有利於考查學生思維的批判性和去偽存真的鑒別能力。我們對這道試題還有一點看法,如果題中的兩個已知條件都派上用場,試題可改為:在某一個月中,星期一多於星期二,星期日多於星期六,那麼這個月的5號是星期____,這個月的最後一天是星期____。 例5 1968年二月份有五個星期四,從1968年起到2100年以前,還有哪幾年有這樣的2月份?(即2月份有五個星期四) 這是道精心設計有一定難度的試題,下面作出比較詳細的分析。 平年的2月份只有28天,所以平年的2月份不可能有五個星期四,1938年是閏年,2月份有29天,由1968年2月份有五個星期四,即可判定這一年的2月1日一定是星期四,也就是說2月份有五個星期四的年份一定是閏年是且該年的2月1日是星期四。從1968年到2100以前,每隔4年都有一個閏年,那麼1968年後下一個符合題意的年份一定是閏年且從1968年2月1日到該年的2月1日所經過的天數是7的倍數(為什麼),從1968年2月1日到1972年2月1日要經過365×3+366(天),365×3+366被7除餘5,5與7互質,所以從1968年起經過7個閏年(即經過7×4=28年)就又有一個年份的2月有五個星期四,所以這道題的答案是1968+28=1996,1996+28=2024,2024+28=2052,2052+28=2080(即1996年、2024年,2052年,2080年的2月份有五個星期四)。