蔡勒公式情景引入公式介绍公式细节代码实现 情景引入 在日常生活中,我们有时候会遇到这样的问题:看到一个日期想知道这一天是星期几。对于这个问题,如果用编程的方式,应该怎么实现呢?你可能已经有思路了,比如你知道某个日期是星期几,把这个日期作为原点,然后计算目标日期和这个原点之间相差多少天,再除以 7 求余数,最后通过余数判断目标日期的星期数。 通过这样的过程,你确实可以得到正确的结果,但这样不
蔡勒公式(Zeller’s congruence),是一种计算任何一日属一星期中哪一日的算法,由德国数学家克里斯提安·蔡勒推算出来。公式如下:or公式都是基于公历的置闰规则来考虑。公式中的符号含义如下:w:星期(计算所得的数值对应的星期:0-星期日;1-星期一;2-星期二;3-星期三;4-星期四;5-星期五;6-星期六)c:年份前两位数y:年份后两位数m:月(m的取值范围为3至14,即在蔡勒公式中
Preface偶然做到日期相关题目,了解到Zeller公式。不甘心停留在使用阶段,便想掌握其推导过程。只适用于格利戈里历法,也就是现今的公历。 1. Zeller公式标准形式 计算1582年10月4日或之前日期 (罗马教皇决定在1582年10月4日后使用格利戈里历法) w:星期; w对7取模得:0-星期日,1-星期一,2-星期二,3-星期三,4-星期四,5-星期五,6
给定一个日期
原创
2022-11-02 09:51:29
126阅读
计算任何一天是星期几的几种算法一:常用公式W = [Y-1] + [(Y-1)/4] - [(Y-1)/100] + [(Y-1)/400] + DY是年份数,D是这一天在这一年中的累积天数,也就是这一天在这一年中是第几天。二:蔡勒(Zeller)公式w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1公式中的符号含义如下,w:星期;c:世纪;y:年(两位数); m:月(m大于等
蔡勒公式W = [C/4] - 2C + y + [y/4] + [13 * (M+1) / 5] + d - 1 (或者是:w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1) 若要计算的日期是在1582年10月4日或之前,公式则为 w=y+[y/4]+[c/4]-2c+[13(m+1)/5]+d+2w:星期; w对7取模得:0-星期日,1-星期
本来是不想在博客中设置转载文的,但是这篇文章写的实在是太好了,我又没有时间和精力去仔细研究一番,写出自己的博客来,也防止将来作者误删找不到原文,故作此转载。足足改了我一个小时才把格式文字公式图片调整好…0. 本文的初衷及蔡勒公式的用处前一段时间,我在准备北邮计算机考研复试的时候,做了几道与日期计算相关的题目,在这个过程中我接触到了蔡勒公式。先简单的介绍一下蔡勒公式是干什么用的。我们有时候会遇到这
# 蔡勒公式:Python中的实现与应用
蔡勒公式(Zeller's Congruence)是一种用于计算任意公历日期所对应星期几的方法,由19世纪的数学家克里斯蒂安·蔡勒(Christian Zeller)提出。该公式适用于任何公历日期,可以帮助我们了解特定日期的星期几,以下将对蔡勒公式进行详细介绍,并给出Python实现代码。
## 蔡勒公式的原理
蔡勒公式通过输入日期的年、月、日等参数
HistoryTime Limit: 20 SecMemory Limit: 256 MB题目连接http://acm.hust.edu.cn/vjudge/contest/view.action?cid=87157#problem/CDescriptionAndroid Vasya likes t...
原创
2021-07-16 14:20:13
88阅读
蔡勒(Zeller)公式:是一个计算星期的公式。随便给一个日期,就能用这个公式推算出是星期几。蔡勒公式如下:w=y
转载
2023-09-15 10:04:56
113阅读
蔡勒公式。下面来自百度百科:https://baike.baidu.com/item/%E8%94%A1%E5%8B%92%E5%85%AC%E5%BC%8F/10491767?fr=aladdin1582年10月4日后:w = (d + 1+ 2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7;(包括当年)1582年10月4日前:w = (d+1+2*m+3*(m+...
原创
2022-03-13 11:29:05
144阅读
蔡勒(Zeller)公式:是一个计算星期的公式。随便给一个日期,就能用这个公式推算出是星期几。蔡勒公式如下:w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1公式中的符号含义如下:w:星期; w对7取模得:0-星期日,1-星期一
转载
2012-02-13 20:59:00
458阅读
2评论
蔡勒公式。下面来自百度百科:https://baike.baidu.com/item/%E8%94%A1%E5%8B%92%E5%85%AC%E5%BC%8F/10491767?fr=aladdin1582年10月4日后:w = (d + 1+ 2*m+3*(m+1)/5+y+y/4-y/100+y/400)%7;(包括当年)1582年10月4日前:w = (d+1+2*m+3*(m+...
原创
2021-09-06 14:24:14
340阅读
vardayOfTheWeek=function(day,month,year){if(month==1){month=13;year--;}if(month==2){month=14;year--;}letweek=(day+2*month...
原创
2021-09-02 14:07:19
255阅读
An problem about date 2000 ms | 内存限制:
65535 2 acm的iphxer经常忘记某天是星期几,但是他记那天的具体日期,他希望你能写个程序帮帮他。
每行有三个整数 year,month,da
原创
2023-04-20 08:55:27
37阅读
前言这篇博客主要是参考网上的一个帖子,然后自己推断验证,在原创和转载之间犹豫了很久,鉴于我确实做了很多推导工作,姑且就认为我是原创吧!简介星期制度星期制度是一种古老的制度。据说因为《圣经×创世纪》中规定上帝用六天的时间创世纪,第七天休息,所以人们也就以七天为一个周期来安排自己的工作和生活,而星期天是休息日。求星期几的思路原点差值取余法首先,先要知道在想算的日子之前的一个确定的日子是星期几,拿这一天作为推算的标准,也就是相当于一个计算的“原点”。其次,知道想算的日子和这个确定的日子之间相差了多少天,用7除以这个日期的差值,余数就是想算的日子的星期在确定的日子的星期之后的多少天。如果余数
转载
2014-02-14 11:54:00
169阅读
2评论
计算给定日期是星期几,好象是编程都会遇到的问题,最近论坛里也有人提到这个问题,并给出了一个公式: W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7 (要求将1、2月当作上一年的13、14月来计算)
转载
2014-01-26 17:49:00
937阅读
2评论
在西方,星期五和数字 13 都代表着坏运气,两个不幸的个体最后结合成超级不幸的一天。所以,不管哪个月的十三日又恰逢星期五就叫“黑色星期五”。要求:输入年份,输出是:判断该年是否包含黑色星期五,如包含,给出具体日期蔡勒(zeller)公式:随便给一个日期,就能用这个公式推算出是星期几 W = [C/4] - 2C +&n
根据一个日期直接计算那天是周几有一个公式:蔡勒公式一重循环判断记录即可:#include<iostream>#include<cstring>#include<sstream>#include<string>using namespace std;string s;void s2i(string s,int &num){...
转载
2022-03-20 14:44:38
92阅读
首先,注明参考地址:https://zhuanlan.zhihu.com/p/79290515蔡勒公式用于根据日期计算那一天是星期几。回想,如
原创
2023-04-03 16:25:16
782阅读