打印
[电路设计]

菜农与蔡勒和基姆拉尔森三个星期公式之揭秘与推想

[复制链接]
2478|0
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
hotpower|  楼主 | 2011-7-23 00:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
菜农星期公式与蔡勒星期公式和基姆拉尔森星期公式之揭秘与推想
(转帖请注明雁塔菜地,谢谢合作)

本文验证工具http://www.hotpower.org/HotAjax/HotPower_HotAjax.html

基姆拉尔森星期公式=W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7
在公式中d表示日期中的日数+1,m表示月份数,y表示年数。
故应该为:
基姆拉尔森星期公式=W= (d+1+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7
在公式中d表示日期中的日数,m表示月份数,y表示年数。

菜农星期公式 = ((百年%4)*5+年+年/4+(13*月+8)/5+日)%7

菜农星期公式 = ((百年&3)*5+年+(年>>2)+(13*月+8)/5+日)%7
其中: 百年=0~99,年=0~99,月=1~12,日=1~28/29/30/31 当月=1或2时,月=月+12或月=月+4,年=年-1

蔡勒星期公式 = 百年/4-2*百年+年+年/4+13*(月+1)/5+日-1
或:
蔡勒星期公式 = 百年/4-2*百年+年+年/4+(13*月+8)/5+日
菜农补充完整的蔡勒星期公式 = (203+百年/4-2*百年+年+年/4+13*(月+1)/5+日-1)%7
或:
菜农补充完整的蔡勒星期公式 = (203+百年/4-2*百年+年+年/4+(13*月+8)/5+日)%7


菜农在《菜农星期公式揭秘及蔡勒公式推想https://bbs.21ic.com/icview-47911-1-1.html已做推导和揭秘了菜农星期公式与蔡勒星期公式。

现在再来揭秘基姆拉尔森星期公式:
今天即2011.7.16,菜农才首次见到《基姆拉尔森星期公式》。这主要是俺小时候发誓不看别人的星期公式,一定要自己推导出来的缘故。

首先,三个公式的特点:
1.都是以三月为“基月”,这样二月就是“年底”了,闰年一年不同的日子就是“年底的最后一天”。
2.公式中的系数必须有“13”。
3.完成0,5,3,1序列,抛弃查表的烦恼。

基姆拉尔森星期公式:
W= (d+1+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7

实际也不例外,因为:
2*m+3*(m+1)/5=10*m/5+3*(m+1)/5=(13*m+3)/5

蔡勒星期公式中有13*(M+1)/5=(13*m+13)/5
基姆拉尔森星期公式有(13*m+3)/5
菜农星期公式中有(13*M+8)/5

菜农已证明蔡勒星期公式和菜农星期公式完全相等,因为:
蔡勒星期公式有:13*(M+1)/5+D-1
菜农星期公式有:(13*M+8)/5+D
(13*M+8)/5+D=(13*M+8+5-5)/5+D
=(13*M+13)/5-5/5+D
= 13*(M+1)/5+D-1
故此部分完全相等!!!

而基姆拉尔森星期公式有:
(13*m+3)/5+D+1
=(13*m+3)/5+5/5+D
=(13*m+8)/5+D (注意:(13*m+8)/5与菜农星期公式系数一样)
=(13*m+8)/5+1+D-1
=(13*m+8)/5+5/5+D-1
=(13*m+13)/5+D-1
=13*(m+1)/5+D-1 (注意:(13*(m+1)/5与蔡勒星期公式系数一样)
可以看出基姆拉尔森星期公式与其他两个公式此系数完全一样!!!

故基姆拉尔森星期公式实际为:
W= (y/400-y/100+y+y/4+(13*m+3)/5+d+1)%7
或(与菜农公式比较):
W= (y/400-y/100+y+y/4+(13*m+8)/5+d)%7
或(与蔡勒公式比较):
W= (y/400-y/100+y+y/4+13*(m+1)/5+d-1)%7

其中:
y/400=(百年*100+年)/400=百年/4
y/100=(百年*100+年)/100=百年
y=百年*100+年
y/4=(百年*100+年)/4=百年*25+年/4

故基姆拉尔森星期公式为:
星期=(百年/4-百年+百年*100+年+百年*25+年/4+(13*月+3)/5+日+1)%7
即:
星期=(百年/4+百年*124+年+年/4+(13*月+3)/5+日+1)%7

因为:(百年*124)%7=(百年*5)%7
简化为:

星期=(百年/4+百年*5+年+年/4+(13*月+3)/5+日+1)%7


或:
星期=(百年/4+百年*5+年+年/4+(13*月+8)/5+日)%7
或:
星期=(百年/4+百年*5+年+年/4+13*(月+1)/5+日-1)%7


比较菜农星期公式:
星期 = ((百年%4)*5+年+年/4+(13*月+8)/5+日)%7
故基姆拉尔森星期公式:
W= (y/400-y/100+y+y/4+(13*m+8)/5+d)%7
实际为:
星期=(百年/4-百年+百年*100+年+百年*25+年/4+(13*月+8)/5+日)%7
最简化:
星期=(百年/4+百年*5+年+年/4+(13*月+8)/5+日)%7

比较蔡勒星期公式:
星期 = (203+百年/4-2*百年+年+年/4+13*(月+1)/5+日-1)%7
故基姆拉尔森星期公式:
W= (y/400-y/100+y+y/4+13*(m+1)/5+d-1)%7
实际为:
星期=(百年/4-百年+百年*100+年+百年*25+年/4+13*(月+1)/5+日-1)%7
最简化:
星期=(百年/4+百年*5+年+年/4+13*(月+1)/5+日-1)%7

只要论证蔡勒星期公式与基姆拉尔森星期公式相同,那么三个公式全一样了!

取出不同之处:
蔡勒星期公式有:
203-2*百年
基姆拉尔森星期公式有:
百年*5

即我们只要论证:
(203-2*百年)%7=(百年*5)%7即可!!!


在《菜农星期公式揭秘及蔡勒公式推想》https://bbs.21ic.com/icview-47911-1-1.html一文中,菜农已论证:
“蔡勒公式中的-2C竟然是想得到重复的0,5,3,1序列采取的“手段””
(203+百年/4-2*百年)%7=0,5,3,1序列

蔡勒0,5,3,1验证(203+百年/4-2*百年)%7
百年=2, (203+2/4-2*2)%7=(203-4)%7=3
百年=3, (203+3/4-2*3)%7=(203-6)%7=1
百年=4, (203+4/4-2*4)%7=(203+1-8)%7==(203+0)%7=0
百年=5, (203+5/4-2*5)%7=(203+1-10)%7=(203-2)%7=(203+5)%7=5
百年=6, (203+6/4-2*6)%7=(203+1-12)%7=(203-4)%7=(203+3)%7=3
百年=7, (203+7/4-2*7)%7=(203+1-14)%7=(203+1-0)%7=(203+1)%7=1
百年=8, (203+8/4-2*8)%7=(203+2-16)%7=(203-14)%7=(203+0)%7=0


菜农的实现:
(百年&3)*5
或((百年&3)<<2)|(百年&3).
即把百年的值取低2位(D1D0)复制到高2位(D3D2)
因为百年&3=0~3或00B~11B
所以百年%4*5只有4个取值0(0000B),5(0101B),10(1010B),15(1111B)
则((百年%4)*5)%7对应0,5,3,1


故菜农的手法“一眼可以看穿”,而蔡勒的必须带入验证。

难道基姆拉尔森也要采取这一手段不成???(基姆拉尔森是何许人也,现在菜农未知,估计和蔡勒一样,都是“卖脑浆的主”)

基姆拉尔森之(百年/4+百年*5)%7=0,5,3,1序列?????

百年=2 (2/4+2*5)%7=3
百年=3 (3/4+3*5)%7=1
百年=4 (4/4+4*5)%7=0
百年=5 (5/4+5*5)%7=5
百年=6 (6/4+6*5)%7=3
百年=7 (7/4+7*5)%7=1
百年=8 (8/4+8*5)%7=0

菜农推导完毕!!!

三个公式完成0,,5,3,1序列的手法如下:

蔡勒星期公式手法:
(203+百年/4-2*百年)%7
基姆拉尔森星期公式手法:
(百年/4+百年*5)%7
菜农星期公式手法:
((百年&3)*5 )%7
或 ((百年&3)<<2)|(百年&3))%7
或 ((百年&3)<<2)+(百年&3))%7

故菜农星期公式手法最简洁

整理三个公式:
蔡勒星期公式=(203+百年/4-2*百年+年+年/4+13*(月+1)/5+日-1)%7
或:
蔡勒星期公式=(203+百年/4-2*百年+年+年/4+(13*月+8)/5+日)%7
或:
蔡勒星期公式=(203+百年/4-2*百年+年+年/4+(13*月+3)/5+日+1)%7

基姆拉尔森星期公式
=(百年/4+百年*5+年+年/4+(13*月+3)/5+日+1)%7
或:
基姆拉尔森星期公式=(百年/4+百年*5+年+年/4+(13*月+8)/5+日)%7
或:
基姆拉尔森星期公式=(百年/4+百年*5+年+年/4+13*(月+1)/5+日-1)%7

注意:(13*月+8)/5+日最简洁!!!

菜农星期公式=((百年%4)*5+年+年/4+(13*月+8)/5+日)%7
或:
菜农星期公式=((百年&3)*5+年+(年>>2)+(13*月+8)/5+日)%7

故菜农星期公式算法最简洁

基姆拉尔森星期公式和菜农星期公式的实际区别
百年/4+百年*5(百年&3)*5
而:
(百年&3)*5=((百年&3)*4)+(百年&3)=((百年&3)<<2)+(百年&3).
或:
(百年%4)*5=((百年%4)*4)+(百年%4)=((百年&3)<<2)+(百年&3).
故:
百年/4+百年*5(百年&3)*5
有:
百年/4+百年*4+百年(百年&3)*4+百年&3)

同理:
蔡勒星期公式和菜农星期公式的实际区别
203+百年/4-2*百年(百年&3)*5

故在此证明菜农星期公式算法最简洁
所以星期公式算法的比拼就是如何构造“0,5,3,1”序列了!!!

而菜农的:
(百年&3)*5
或((百年&3)<<2)|(百年&3).
即把百年的值取低2位(D1D0)复制到高2位(D3D2)
因为百年&3=0~3或00B~11B
所以百年%4*5只有4个取值0(0000B),5(0101B),10(1010B),15(1111B)
则((百年%4)*5)%7对应0,5,3,1

是绝杀!!!

菜农论证结束!进一步证明“菜农星期公式”不是白给的,是有理论依据的~~~

菜农HotPower 2011.7.17 0:08 于雁塔菜地

相关下载

发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:[url=http://www.21ic.com/tools/HotWC3_V1.23.html]

1460

主题

21619

帖子

506

粉丝