<P> 不准用系统函数,请写出一个函数,传入一个日期,判断是星期几?大家有什么思路?</P> <P> </P>
2 回答
慕容3067478
TA贡献1773条经验 获得超3个赞
公元前1年12月31日正好是星期日 ----------------------- 这个推算准确么? ----------- 我查了一些资料 1:在世界各国通用一星期七天的制度。这个制度最早由君士坦丁大帝(Constantine the Great)制定。他在公元321年3月7日正式宣布7天为一周,这个制度一直沿用至今。 问题是,我不知道321年3月7号是星期几。 2:1582年,罗马教皇格里高利十三世采用意大利医生利奥制订的格里历。1582年10月4日后的一天是10月15日,而不是10月5日,但星期序号仍然连续计算,10月4日是星期四,第二天10月15日是星期五。 由此可见:在此之前的星期和日期对应就会出错,相差3天。似乎我们可以从这一天开始设为基点。从这天以后没听说还有“消失的日子”。 3:现在网上提供的万年历基本上都是1900年-2049年的。1900年1月1号是星期一。 以我看,这个是最好的基准点。 ---------- 所以,如果我们要找一个“日期”--“星期几”的对照,最好采用1900年了,这个才比较准确。 所以, 1:我们可以才用这个作为基准:1900-1-1==monday。 2:然后再根据闰年规则,这样可以计算出日期的差值DiffDay。 3:然后DiffDay mod 7. 这样就可以计算出今天是星期几了。 另外,根据上边的史料: 谁要计算公元1582之前的星期几,我看程序得改写一点了。 要是推断321年以前的,似乎就没有实际意义了。
- 2 回答
- 0 关注
- 563 浏览
添加回答
举报
0/150
提交
取消