| 首先声明菜农不喜欢数学,更不是数学家~~~ 
 刚找到当年(13*M+8)/5)推导过程的“手稿”。它要从月星期表说起
 
 通用星期偏差表(此表是菜农公式中的(13*M+8)/5)
 分组           大  小  大  小  大  大  小   大   小   大   大   小  大  小  大
 闰年  1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月 13月 14月 3月 4月 5月
 天数   31  29  31  30  31  30  31  31  30  31   30   31   32   29  32  30   31
 星期   5   1   2   5   0   3   5   1   4   6    2    4     0    3   5   1    3
 星期差         3   2   3   2   3   3   2   3    2    3     3    2   3   2    3
 
 分组           大  小  大  小  大  大  小   大   小   大   大   小  大  小  大
 平年  1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月 13月 14月 3月 4月 5月
 天数   31  28  31  30  31  30  31  31  30  31   30   31   32   28  32  30   31
 星期   6   2   2   5   0   3   5   1   4   6    2    4     0    3   5   1    3
 星期差         3   2   3   2   3   3   2   3    2    3     3    2   3   2    3
 
 由于明年的1月(13月)和今年5月的月表值都是0,2月(14月)和今年6月的月表值都是3
 故月表简化为:
 通用星期偏差表(此表是菜农公式中的(13*M+8)/5)
 分组           大  小  大  小  大  大  小   大   小   大
 年           3月 4月 5月 6月 7月 8月 9月 10月 11月 12月
 1月 2月
 天数           31  30  31  30  31  31  30  31   30   31
 31  28/29
 星期值         2   5   0   3   5   1   4   6    2    4
 星期差         3   2   3   2   3   3   2   3    2    3
 
 可以看出"分组"为两组(大月小月大月小月大月),每5(记住这个"5")个月1组(注意1月2月划归为5月6月):
 3月 4月 5月 6月 7月 和 8月 9月 10月 11月 12月
 星期差同为:3   2   3   2   3
 
 星期差求和=3+2+3+2+3=13(记住这个"13")
 
 再对12个月的星期值求和=0+3+2+5+0+3+5+1+4+6+2+4=40
 由于每5个月1组,则40/5=8(记住这个"8")
 
 因为原查表算法为:
 某日星期几=(百年%4*5+年+年/4+月星期表+日)%7
 
 所以要琢磨出:
 月星期表 = ((13*M+8)/5)%7
 
 因为每5个月1组,故肯定有((aM+b)/5)%7或((aM+b)%5)%7存在。
 但是((aM+b)%5)%7可化简为(aM+b)%5,结果只有0,1,2,3,4.这肯定不过!!!
 
 所以((aM+b)/5)%7将是推导的框架!!!
 
 哈哈~~~"5"用到了。该"13"和"8"上阵了。
 
 参数只有a,b.代入((aM+b)/5)%7几次即可搞定((13*M+8)/5)%7~~~
 
 哈哈~~~菜农没文化让大家见笑了~~~搞笑~~~绝对的"非典"
 
 菜农绝对气晕数学教授,不过俺数学不好也难为菜农了~~~
   |