计算星期几的方法

合集下载

计算任何一天是星期几的几种算法

计算任何一天是星期几的几种算法

计算任何⼀天是星期⼏的⼏种算法近⽇在论坛上看到有⼈在问星期算法,特别整理了⼀下,这些算法都是从⽹上搜索⽽来,算法的实现是我在项⽬中写的。

希望对⼤家有所帮助。

⼀:常⽤公式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⼤于等于3,⼩于等于14,即在蔡勒公式中,某年的1、2⽉要看作上⼀年的13、14⽉来计算,⽐如2003年1⽉1⽇要看作2002年的13⽉1⽇来计算);d:⽇;[ ]代表取整,即只要整数部分。

相⽐于通⽤通⽤计算公式⽽⾔,蔡勒(Zeller)公式⼤⼤降低了计算的复杂度。

三:对蔡勒(Zeller)公式的改进作者:冯思琮相⽐于另外⼀个通⽤通⽤计算公式⽽⾔,蔡勒(Zeller)公式⼤⼤降低了计算的复杂度。

不过,笔者给出的通⽤计算公式似乎更加简洁(包括运算过程)。

现将公式列于其下:W=[y/4]+r (y/7)-2r(c/4)+m’+d公式中的符号含义如下,r ( )代表取余,即只要余数部分;m’是m的修正数,现给出1⾄12⽉的修正数1’⾄12’如下:(1’,10’)=6;(2’,3’,11’)=2;(4’,7’)=5;5’=0;6’=3;8’=1;(9’,12’)=4(注意:在笔者给出的公式中,y为润年时1’=5;2’=1)。

其他符号与蔡勒(Zeller)公式中的含义相同。

四:基姆拉尔森计算公式这个公式名称是我给命名的,哈哈希望⼤家不要见怪。

W= (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) mod 7在公式中d表⽰⽇期中的⽇数,m表⽰⽉份数,y表⽰年数。

注意:在公式中有个与其他公式不同的地⽅:把⼀⽉和⼆⽉看成是上⼀年的⼗三⽉和⼗四⽉,例:如果是2004-1-10则换算成:2003-13-10来代⼊公式计算。

日的函数公式

日的函数公式

日的函数公式
日的函数公式是用来计算一个特定日期的星期几的数学公式。

它是根据基姆拉尔森计算公式(Zeller'scongruence)而来,该公式可以用一种简单的方式来计算一个日期是星期几。

日的函数公式的公式如下:
W= (d+2m+3(m+1)/5+y+y/4-y/100+y/400+1) mod 7
其中,W代表星期几,d代表日期,m代表月份,y代表年份。

需要注意的是,这个公式只适用于格里高利历(即使用于大部分国家的公历),而不适用于其他历法,如农历。

日的函数公式可以用于很多应用中,例如判断一个日期是工作日还是休息日,或者在日历中标记特定的日期。

它的计算方法虽然比较复杂,但是只要掌握了公式,就可以快速地计算出一个日期的星期几。

- 1 -。

星期计算公式

星期计算公式

星期计算公式星期是我们日常生活中常用的时间单位之一,我们经常会用到星期来安排工作、学习和休息时间。

在日常生活中,我们经常会遇到一些需要计算星期的情况,比如计算某一天是星期几,或者计算某一天之后的几天是星期几。

为了更方便地进行星期的计算,我们可以使用一些简单的公式来帮助我们快速准确地计算出星期。

首先,我们需要明确一点,那就是一周有七天,从星期一到星期日分别为1到7,我们可以用这个数字来表示每一天所对应的星期。

接下来,我们来介绍一些常用的星期计算公式。

1. 计算某一天是星期几。

要计算某一天是星期几,我们可以使用蔡勒公式。

蔡勒公式是一种用于计算日期对应的星期的公式,它的计算方法如下:W = (C/4 2C + Y + Y/4 + 13(M+1)/5 + d) % 7。

其中,W表示星期几,C表示年份的前两位数,Y表示年份的后两位数,M表示月份(3月为1,4月为2,依此类推,其中1月和2月视为上一年的13月和14月),d表示日期。

%表示取余运算符。

例如,我们要计算2022年10月1日是星期几,那么根据蔡勒公式,我们可以将年份和月份代入公式中,然后计算出W的值,最后根据W的值来确定这一天是星期几。

2. 计算某一天之后的几天是星期几。

如果我们想要计算某一天之后的几天是星期几,我们可以先计算出这一天对应的星期,然后根据需要计算的天数来确定新的星期。

比如,如果我们知道某一天是星期一,然后想要计算这一天之后的10天是星期几,那么我们可以先确定这一天是星期一,然后再加上10天,最后根据加上天数后的结果来确定新的星期。

3. 计算某一天之前的几天是星期几。

如果我们想要计算某一天之前的几天是星期几,我们可以先计算出这一天对应的星期,然后根据需要计算的天数来确定新的星期。

比如,如果我们知道某一天是星期五,然后想要计算这一天之前的15天是星期几,那么我们可以先确定这一天是星期五,然后再减去15天,最后根据减去天数后的结果来确定新的星期。

计算某天是星期几

计算某天是星期几

计算某天是星期几(含六个例程)计算某天是星期几,最常见的公式: W = [Y-1] + [(Y-1)/4] - [(Y-1)/100] + [(Y-1)/400] + D Y是年份数,D是这一天在这一年中的累积天数,也就是这一天在这一年中是第几天。

计算某天是星期几,最常见的公式:W=[Y-1]+[(Y-1)/4]-[(Y-1)/100]+[(Y-1)/400]+DY是年份数,D是这一天在这一年中的累积天数,也就是这一天在这一年中是第几天。

最好用的是蔡勒公式:W=[C/4]-2C+y+[y/4]+[13*(M+1)/5]+d-1C是世纪数减一,y是年份后两位,M是月份,d是日数。

1月和2月要按上一年的13月和14月来算,这时C和y均按上一年取值。

两个公式中的[...]均指只取计算结果的整数部分。

算出来的W除以7,余数是几就是星期几。

如果余数是0,则为星期日。

星期制度是一种有古老传统的制度。

据说因为《圣经〃创世纪》中规定上帝用了六天时间创世纪,第七天休息,所以人们也就以七天为一个周期来安排自己的工作和生活,而星期日是休息日。

从实际的角度来讲,以七天为一个周期,长短也比较合适。

所以尽管中国的传统工作周期是十天(比如王勃《滕王阁序》中说的“十旬休暇”,即是指官员的工作每十日为一个周期,第十日休假),但后来也采取了西方的星期制度。

在日常生活中,我们常常遇到要知道某一天是星期几的问题。

有时候,我们还想知道历史上某一天是星期几。

通常,解决这个方法的有效办法是看日历,但是我们总不会随时随身带着日历,更不可能随时随身带着几千年的万年历。

假如是想在计算机编程中计算某一天是星期几,预先把一本万年历存进去就更不现实了。

这时候是不是有办法通过什么公式,从年月日推出这一天是星期几呢?答案是肯定的。

其实我们也常常在这样做。

我们先举一个简单的例子。

比如,知道了2004年5月1日是星期六,那么2004年5月31日“世界无烟日”是星期几就不难推算出来。

计算星期几的方法

计算星期几的方法

计算任何一个日期是星期几的方法蔡勒公式W = [C/4] - 2C + y + [y/4] + [13×(M+1) / 5] + d - 1 C是世纪数减1,y是年份后两位,M是月份(从3月开始,1月和2月要按上一年的13月和14月来算,这时C和y均按上一年取值),d是日数。

求出W的值,再除以7,余几就是星期几,余数为0,则是星期天。

注意:[...]表示只取整数部分注意:公式中如计算得出负数,不能按习惯的余数的概念求余数,只能按数论中的余数的定义求余。

为了方便计算,我们可以给它加上一个7的整数倍,使它变为一个正数,比如加上7、14、21、28等,得到一个整数后,再除以7,余几,说明这一天是星期几。

例1:2004年的9月1日是星期几?C=20 y=04 M=9 d=1W = [C/4] - 2C + y + [y/4] + [13×(M+1) / 5] + d - 1=[20/4]-2×20+04+[04/4]+[13×(9+1)/5]+1-1 =5-40+4+1+[13×2]+1-1=5-40+4+1+26+1-1=-4W为负数不行,加7的倍数14,得10。

10除以7,余数为3,2004年的9月1日是星期三。

例2:2010年的7月15日是星期几?C=20 y=10 M=7 d=15W = [C/4] - 2C + y + [y/4] + [13×(M+1) / 5] + d - 1=[20/4]-2×20+10+[10/4]+[13×(7+1)/5]+15-1 =5-40+10+2+[13×8/5]+14=-23+20+14=1111除以7余数为4,2010年的7月15日是星期四。

链接:1世纪为100年,2000年以后为21世纪,以此类推1个年代为10年,90-99为90年代,以此类推!如:1900年是19世纪、1901年是20世纪、2000年是20世纪、2001年是21世纪。

星期的计算

星期的计算

星期的计算是以数学方法计算出某一指定日期是在一周中的哪一天。

多种数学算法可计算出过去或未来某一指定日期,是属于一周中的星期几,包括判决日法则(Doomsday Rule),Babwani公式等,但其实这些算法皆基于类似的机制相互变化而来,只是透过不同规则取得相同结果。

算法的典型应用,是计算某人的出生日期或某重大事件的发生日期,是在一周中的哪一天。

目录[隐藏]1 简介1.1 最简单的方法一1.2 最简单的方法二2 有用的概念2.1 同周月2.2 同周年3 算法3.1 例子3.2 世纪星期表3.3 年份星期表3.4 月份星期表3.5 日期星期表4 表格法5 心算法5.1 判决日5.2 年数的计算5.3 例子6 高斯公式6.1 例子7 Babwani公式8 蔡勒公式9 主日字母10 参见[编辑]简介差不多所有星期算法的基础皆可归纳如下:从一个已知的日子作为起始日,一般采用世纪的第一天,通过同余7计算共过去了多少天。

如将一周日子由0至6计算,结果将为一余数,如使用1至7计算,则7将代替0。

查表或使用已知规则计算上面的起始日,即该世纪开始的星期数。

查表或使用已知规则计算该年份开始的星期数。

计算该月份开始的星期数。

从该月份开始的计算该日的星期数。

简单来说,使用同余7表示在计算中可剔除7的倍数,如此可把7当作0、8当作1、9当作2、18当作4,如此类推。

如果把星期日当作第0日,7日后(第7日)亦是星期日,而第18日则会与第4日相同,为星期日后的4天,即星期四。

一些算法把所有加数先行计算,然后把7的倍数剔除,而其他算法则在每一步皆剔除7的倍数。

两种做法皆可取,第一种做法较适用于计算机及电脑算法中,其他则较适用于心算。

这些计算在熟习后,可在脑内计算出来。

[编辑]最简单的方法一把四个数加起来然后除七的余数就是,如果整除就是星期日。

这四个数分别是:Y(year):年份减2000L(leap days):从2000年1月1日到该日之间的闰日数目M(month):月份的代号,从一月到十二月分别是511462403513,即是一月是5,二、三月是1,四月是4,五月是6,如此类推,十二月是3就是说——Y+L+M+D(除7的余数)举例说:2008年12月10日(8+3+3+10)除7余3,即该日是星期三,其中Y=8、L=3(三个闰日分别是2000年2月29日、2004年2月29日和2008年2月29日)、M=3(12月的代号是3)、D=10再举一例:2008年2月10日(8+2+1+10)除7余0,即该日是星期日,其中Y=8、L=2(从2000年1月1日到2008年2月10日之间只有二个闰日:2000年2月29日和2004年2月29日)、M=1(2月的代号是1)、D=10此公式的原理365除七余一,所以每过一个平年,星期数便加一。

日历查询的算法如何计算某一天是星期几

日历查询的算法如何计算某一天是星期几

⽇历查询的算法如何计算某⼀天是星期⼏—— 蔡勒(Zeller)公式历史上的某⼀天是星期⼏?未来的某⼀天是星期⼏?关于这个问题,有很多计算公式(两个通⽤计算公式和⼀些分段计算公式),其中最著名的是蔡勒(Zeller)公式。

即w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1公式中的符号含义如下,w:星期;c:世纪-1;y:年(两位数);m:⽉(m⼤于等于3,⼩于等于14,即在蔡勒公式中,某年的1、2⽉要看作上⼀年的13、14⽉来计算,⽐如2003年1⽉1⽇要看作2002年的13⽉1⽇来计算);d:⽇;[ ]代表取整,即只要整数部分。

(C是世纪数减⼀,y是年份后两位,M是⽉份,d是⽇数。

1⽉和2⽉要按上⼀年的13⽉和 14⽉来算,这时C和y 均按上⼀年取值。

)算出来的W除以7,余数是⼏就是星期⼏。

如果余数是0,则为星期⽇。

以2049年10⽉1⽇(100周年国庆)为例,⽤蔡勒(Zeller)公式进⾏计算,过程如下:蔡勒(Zeller)公式:w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1=49+[49/4]+[20/4]-2×20+[26× (10+1)/10]+1-1=49+[12.25]+5-40+[28.6]=49+12+5-40+28=54 (除以7余5)即2049年10⽉1⽇(100周年国庆)是星期5。

你的⽣⽇(出⽣时、今年、明年)是星期⼏?不妨试⼀试。

不过,以上公式只适合于1582年10⽉15⽇之后的情形(当时的罗马教皇将恺撒⼤帝制订的儒略历修改成格⾥历,即今天使⽤的公历)。

星期制度是⼀种有古⽼传统的制度。

据说因为《圣经·创世纪》中规定上帝⽤了六天时间创世纪,第七天休息,所以⼈们也就以七天为⼀个周期来安排⾃⼰的⼯作和⽣活,⽽星期⽇是休息⽇。

从实际的⾓度来讲,以七天为⼀个周期,长短也⽐较合适。

所以尽管中国的传统⼯作周期是⼗天(⽐如王勃《滕王阁序》中说的“⼗旬休暇”,即是指官员的⼯作每⼗⽇为⼀个周期,第⼗⽇休假),但后来也采取了西⽅的星期制度。

计算某年某月某日是星期几的方法

计算某年某月某日是星期几的方法

计算某年某月某日是星期几的方法
算式:
S=X-1+[(X-1)/4] -[(X-1)/100] +[(X-1)/400]+C
其中 x是公元的年数,C是从这一年的元旦算起到这一天为止(包括这一天是内)的天数。

方括号表示其中算式的整数部分,即在计算S 的值时,三个方括号中只要算出商数的整数部分,把余数略去不计。

求出S的值之后,除以7,余几就是星期几;除尽了就是星期日。

举例:
1.计算西安事变发生在星期几。

解西安事变发生在1936年12月12日,所以x=1936 C=347于是可得:
S=1936-1+[(1936-1)/4] -[(1936-1)/100] +[(1936-1)/400]+347 =1935+483-19+4+347=2750
2750÷7=392………6,
所以西安事变发生在星期六
2.计算一下今天(2006年6月11日)是星期几;此时x=2006, C=162,于是可得 :
S=2006-1+[(2006-1)/4] -[(2006-1)/100] +[(2006-1)/400]+162 =2005+501-20+5+162=2653
2653÷7=379,无余数,
所以,今天是星期日。

说明:
这个计算方法根据的是每四年一闰、百年不闰、四百年再闰的历法,该历法是从公元1582年开始实行的,所以,用这个方法可以计算公元1582年以后某年某月某日是星期几。

蔡勒公式的推导过程

蔡勒公式的推导过程

蔡勒公式的推导过程蔡勒公式是一种计算星期几的公式,被广泛应用于日历、时间和天文学等领域。

它基于一种数学方法,通过一系列简单的计算,能够快速准确地确定任意日期是星期几。

下面我们来看看蔡勒公式的推导过程。

我们需要了解一个基本概念:闰年。

闰年是指公历年份中除以4余数为0但除以100余数不为0或者除以400余数也为0的年份。

例如,2000年是闰年,1900年不是闰年。

接下来,我们来分析蔡勒公式的计算过程。

假设要计算的日期为YYYY年MM月DD日,我们首先需要将月份转换为“调整后的月份”(Adjusted Month)。

转换公式如下:若MM为1或2月,则将年份-1,月份变为13或14月,即:A = YYYY - 1B = 13 (或14)否则,A = YYYY,B = MM接下来,我们计算“世纪数”(Century)和“世纪年”(Century Year)。

世纪数的计算公式为:C = INT(A / 100)世纪年的计算公式为:D = A - 100 * C接着,我们计算“闰年修正值”(Leap Correction)和“世纪年修正值”(Century Year Correction)。

闰年修正值的计算公式为:E = INT(26 * (B + 1) / 10) - 2 * C + D + INT(D / 4) + INT(C / 4)世纪年修正值的计算公式为:F = 5 * C + D我们可以根据以下公式计算星期几(Weekday):Weekday = (E + F + DD) mod 7其中,DD为日期数。

mod表示取模运算。

通过以上的计算过程,我们可以快速准确地确定任意日期是星期几。

需要注意的是,蔡勒公式的计算结果中,0代表星期日,1代表星期一,以此类推,6代表星期六。

蔡勒公式是一种简单易用的计算星期几的公式,它的推导过程基于数学方法,通过一系列简单的计算,可以快速准确地确定任意日期是星期几。

在日历、时间和天文学等领域得到了广泛的应用。

你的生日是星期几

你的生日是星期几

你的生日是星期几
也许你知道你的生日是星期几,不过一般人大概都不知道自己的生日是星期几,即使父母也可能早就忘记了,而只记得是在几月几日。

你想知道自己是在星期几出生的吗?
如果你有足够的耐心,可以仔细地推算回去,不过不要忘了每4年一次的闰年。

这样做恐怕要花不少时间,下面我们提供较简单的方法:
(1)Y代表你出生的年份。

(2)D代表你生日是在一年中的第几天。

(3)计算X=(Y-1)/4,忽略余数。

(4)计算 S=Y+D+X。

(5)把S除以7,记下余数。

从下表你就可以查出你的生日是星期几。

下面举例说明:某人生于1960年6月6日。

(1)Y=1960
(2)一月有31天
二月有29天(因为1960年是闰年)
三月有31天
四月有30天
五月有31天
六月有6天
D=158
(4)S=1960+158+489=2607
(5)2607÷7=372余3
查表格,余数3表示此人的生日是在星期一。

当你为自己、家人及朋友算出生日是星期几之后,你能解释这个方法的原理吗?。

求星期几的计算公式

求星期几的计算公式

求星期几的计算公式星期几的计算公式。

在日常生活中,我们经常需要知道某一天是星期几,比如安排活动、约会、出行等。

虽然现在手机、电脑等设备都可以直接显示日期和星期,但是了解星期几的计算公式可以帮助我们更好地理解时间的运行规律,也可以在没有设备的情况下快速计算出某一天是星期几。

本文将介绍几种常用的计算公式,希望能帮助大家更好地理解和利用时间。

1. 基本的计算方法。

首先,我们来看一下基本的计算方法。

公元1年1月1日是星期一,这是一个基准点。

接下来,我们可以利用以下规律来计算某一天是星期几:每个平年的1月1日和12月31日都是星期一。

每个闰年的1月1日和12月31日都是星期二。

每个平年的2月28日是星期二,2月29日是星期三。

每个闰年的2月29日是星期四。

有了以上规律,我们可以通过简单的加减运算来计算某一天是星期几。

比如,如果我们知道某一天是2019年5月20日,我们可以先算出2019年1月1日是星期二,然后再计算出5月20日距离1月1日有多少天,最后根据余数来确定星期几。

这种方法虽然比较繁琐,但是在没有工具的情况下也是可行的。

2. 蔡勒公式。

除了基本的计算方法外,还有一种蔡勒公式可以帮助我们快速计算某一天是星期几。

这个公式由德国数学家蔡勒在18世纪提出,经过简单的计算即可得出某一天的星期。

公式如下:\[ \begin{split} h & = q + \left\lfloor \frac{13(m+1)}{5} \right\rfloor + K +\left\lfloor \frac{K}{4} \right\rfloor + \left\lfloor \frac{J}{4} \right\rfloor 2J \end{split} \] 其中,h代表所求的星期几(0代表星期日,1代表星期一,以此类推),q代表月份中的哪一天,m代表月份(3代表3月,4代表4月,1月和2月分别看作上一年的13月和14月),K代表年份的最后两位数,J代表年份的前两位数。

计算指定年月日是星期几的公式

计算指定年月日是星期几的公式

计算指定年月日是星期几的公式陈渣荒当你想要知道某年某月某日是星期几,手边又无相关资料或工具可查时,本文提供的“计算指定年月日是星期几的公式”,可以帮你即时获得答案。

假设指定的年月日是 abcd年y月r日,则计算这天是星期几的公式为X=7{(r+[(13(y-2)-1)/5]+cd+[cd/4]+[ab/4]-2*ab)/7}. 公式中,X表示星期几;r表示日期;y表示月份;cd与ab分别表示年份数的后面两位与前面两位上的数字;记号[f]与{f}分别表示数值f的整数部分与分数部分,例如[83/7]与{83/7}分别是11与6/7. 要特别注意的是,当月份是1与2时,y-2成为反常值-1与0而使计算结果不正确。

解决方法是把年月作适当变换,即从年份数中减去1年,并把这1年换成12个月,再把这12个月加到月份数中,这样,年月日就换成了(abcd-1)年(y+12)月r日。

用变换后的这个年月日的对应数值进行计算就可以了。

下面举例说明这个公式的具体运用例1 试计算2014年12月31日是星期几解把这个年月日的对应数值代入公式,有X=7{(31+[(13(12-2)-1)/5]+14+[14/4]+[20/4]-2*20)/7}=7{(31+25+14+3+5-40)/7}=7{38/7}=7{5+3/7}=7*3/7=3.即2014年12月31日是星期3.例2 试计算2015年5月1日是星期几解把这个年月日的对应数值代入公式,有X=7{(1+[(13(5-2)-1)/5]+15+[15/4]+[20/4]-2*20)/7}=7{(1+7+15+3+5-40)/7}=7{-9/7}=7{-1-2/7+1-1}=7{-2+5/7}=7*5/7=5. 即2015年5月1日是星期5. 注意:记号{ }中的负值分数必须代换成正值分数后,才可以与7相乘而得到正确结果。

例3 试计算2000年2月29日是星期几解先把年月日换成1999年14月29日,再把它的对应数值代入公式,有X=7{(29+[(13(14-2)-1)/5]+99+[99/4]+[19/4]-2*19)/7}=7{(29+31+99+24+4-38)/7}=7{149/7}=7{21+2/7}=7*2/7=2. 即2000年2月29日是星期2.例4 试计算2026年8月2日是星期几解把题中对应数值代入公式,有X=7{(2+[(13(8-2)-1)/5]+26+[26/4]+[20/4]-2*20)/7}=7{(2+15+26+6+5-40)/7}=7{14/7}=7{2+0/7}=7*0=0. 即2026年8月2日是星期日。

计算周的公式

计算周的公式

计算周的公式周是指一段时间内连续的七天,是时间的基本单位之一。

在日常生活中,我们经常需要计算周数,比如计算工作日、假期、学期等。

那么,如何计算周数呢?本文将介绍几种常见的计算周的公式。

1. 标准周数公式标准周数公式是最简单的计算周数公式,适用于大多数情况。

公式如下:周数 = (日期差 + 第一天是星期几) ÷ 7其中,日期差指的是两个日期之间相差的天数,第一天是星期几指的是起始日期是星期几。

例如,如果要计算从2022年1月1日到2022年1月31日之间的周数,那么日期差为30天,而2022年1月1日是星期六,因此第一天是星期六。

代入公式计算得到:周数= (30 + 6) ÷ 7 = 5因此,从2022年1月1日到2022年1月31日之间共有5周。

2. ISO周数公式ISO周数是指按照国际标准化组织(ISO)制定的周数,它将每年的第一周定义为包含该年的第一个星期四的周。

ISO周数公式如下:周数 = (日期差 + (第一天是星期几 - 1) + 3) ÷ 7其中,日期差和第一天是星期几的含义与标准周数公式相同。

需要注意的是,ISO周数公式中的3表示的是从星期四到周末还有3天,而不是从星期日到周末还有3天。

例如,如果要计算从2022年1月1日到2022年1月31日之间的ISO周数,那么日期差为30天,而2022年1月1日是星期六,因此第一天是星期六。

代入公式计算得到:周数 = (30 + (6 - 1) + 3) ÷ 7 = 5因此,从2022年1月1日到2022年1月31日之间共有5周。

3. Excel周数公式Excel提供了一种方便的计算周数的函数,称为WEEKNUM函数。

WEEKNUM函数的语法如下:=WEEKNUM(日期,[类型])其中,日期表示要计算周数的日期,类型表示周数的类型。

类型有两种取值:1和2。

如果类型为1,则第一周为包含1月1日的那一周,如果类型为2,则第一周为包含1月1日的那一周的第一天为星期一的那一周。

计算星期几的方法

计算星期几的方法

计算星期几的方法计算任何一个日期是星期几的方法蔡勒公式W = [C/4] - 2C + y + [y/4] + [13×(M+1) / 5] + d - 1 C是世纪数减1,y是年份后两位,M是月份(从3月开始,1月和2月要按上一年的13月和14月来算,这时C和y 均按上一年取值),d是日数。

求出W的值,再除以7,余几就是星期几,余数为0,则是星期天。

注意:[...]表示只取整数部分注意:公式中如计算得出负数,不能按习惯的余数的概念求余数,只能按数论中的余数的定义求余。

为了方便计算,我们可以给它加上一个7的整数倍,使它变为一个正数,比如加上7、14、21、28等,得到一个整数后,再除以7,余几,说明这一天是星期几。

例1:2004年的9月1日是星期几?C=20 y=04 M=9 d=1W = [C/4] - 2C + y + [y/4] + [13×(M+1) / 5] + d - 1 =[20/4]-2×20+04+[04/4]+[13×(9+1)/5]+1-1=5-40+4+1+[13×2]+1-1=5-40+4+1+26+1-1=-4W为负数不行,加7的倍数14,得10。

10除以7,余数为3,2004年的9月1日是星期三。

例2:2010年的7月15日是星期几?C=20 y=10 M=7 d=15W = [C/4] - 2C + y + [y/4] + [13×(M+1) / 5] + d - 1 =[20/4]-2×20+10+[10/4]+[13×(7+1)/5]+15-1=5-40+10+2+[13×8/5]+14=-23+20+14=1111除以7余数为4,2010年的7月15日是星期四。

链接:1世纪为100年,2000年以后为21世纪,以此类推1个年代为10年,90-99为90年代,以此类推!如:1900年是19世纪、1901年是20世纪、2000年是20世纪、2001年是21世纪。

某年某月某日星期几的计算方法

某年某月某日星期几的计算方法

某年某月某日星期几的计算方法!首先确定公历(阳歷)12个月,每个月的代码数即:每个月号前一天是星期几,本月代码数就是几,如果是星期天,代码数就是0。

那个月几号是星期几?就把几号加上本月代码数后被7除,餘几就是星期几,除尽就是星期天。

如:2006年从1月---12月以次代码数为:6、2、2、5、0、3、5、1、4、6、2、4。

如果计算10月1日星期几?就把1号加上10月代码6等於7,能被7除尽,10月1日就是星期天。

再如:7月21日星期几?就把21加上7月代码数5等於26,被7除后餘5,7月21日就是星期五(因为21本身就能被7除尽,就不用再加代码数了,代码数是几就是星期几)。

注:如果要计算下一年每月代码数,可在上一年每月代码数上加1即可。

阳歷一年中大月为31天,小月为30天,平月(2月)为28天,闰月年为29天。

闰月年就是,年数能被4除尽的为闰月年,闰月年就要在2月加1天(2月变成29天)。

闰月年每月的代码数除1月、2月在上一年同月代码数上加1外,其他月份都在上年同月代码数上加2即可;闰月年的下一年每月的代码数除1月、2月在上一年同月代码数上加2外,其他月份在上年同月代码数上加1即可。

想知道某年某月某日星期几的计算方法?注:你要想查某年、某月、某日、星期几?如查:(1)、1949年10月1日星期几?1、先查1949年代码数为5;2、再查10月代码数为0;3、后查1日代码数为1。

4、然后把年、月、日代码数相加得6再除7於6、(5+0+1)/7=6、即星期六。

(被7除余几,就是星期几);5、括弧年份能被4除尽为闰年, 闰年1、2月代码数以括弧为准。

(2)、要查:1963年7月29日,星期几?经查代码数年为1、月为6、日为1;即:(1+6+1)/7=1,被7除余1,这天就是星期一。

根据年月日推算是星期几的公式

根据年月日推算是星期几的公式

根据年月日推算是星期几的公式有时候,想知道公元某年某月某日是星期几,可以用下面的公式算出来:这里的方括号表示只取商的整数部分。

式中:x :这一年是公元多少年。

y :这一天是这一年的第几天。

s :星期几。

不过要先除以7,再取余数。

没有余数是星期日,余数是1、2、3、4、5、6,分别是星期一、星期二、星期三、星期四、星期五、星期六。

比如,2010年国庆节(10月1日)是星期几?x =2010。

y =31+28+31+30+31+30+31+31+30+1=31×5+30×3+28+1=274。

s =2010-1+502-20+5+274=2770,2770÷7余5。

所以,2010年国庆节是星期五。

如果,你只想知道这个公式怎样用,到这儿就可以了。

而要想知道这个公式的道理是什么,那可就说来话长了。

“星期制”是公元321年3月7日,古罗马皇帝君士坦丁宣布开始实行的,并且规定这一天为星期一。

实际上,就是把公元元年元旦(公元1年1月1日)规定为星期一。

(相当于公式中的x =1,y =1,所以s =1。

)通常1年有365天,365÷7=52……1,就是说比52个星期多1天。

所以,同一个日期,下一年是星期几,就要比上一年向后推1天。

比如,上一年元旦是星期三,下一年元旦就是星期四。

“通常每过1年,把同一日期是星期几向后推1天”,是理解这个公式的关键。

要想知道某年某月某日是星期几,首先,要知道这一年元旦以公元元年元旦是星期一为起点,已经把星期几向后推了多少天,还要知道这一天是这一年的第几天。

而要知道这一年元旦已经把星期几向后推了多少天,可以从公元元年到这一年已经过了多少年算起,先按1年向后推1天计算,再根据闰年的规定进行调整。

闰年的规定是:年份是4的倍数的一般都是闰年,其中,年份是整百数的y x x x x s +⎥⎦⎤⎢⎣⎡-+⎥⎦⎤⎢⎣⎡--⎥⎦⎤⎢⎣⎡-+-=40011001411一般不是闰年,只有年份是400的倍数的才是闰年。

判断某一天是星期几的算法

判断某一天是星期几的算法

最后写一个很有用的星期的介绍如何计算某一天是星期几?——蔡勒(Zeller)公式历史上的某一天是星期几?未来的某一天是星期几?关于这个问题,有很多计算公式(两个通用计算公式和一些分段计算公式),其中最著名的是蔡勒(Zeller)公式。

即w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1公式中的符号含义如下,w:星期;c:世纪-1;y:年(两位数);m:月(m大于等于3,小于等于14,即在蔡勒公式中,某年的1、2月要看作上一年的13、14月来计算,比如2003年1月1日要看作2002年的13月1日来计算);d:日;[ ]代表取整,即只要整数部分。

(C 是世纪数减一,y是年份后两位,M是月份,d是日数。

1月和2月要按上一年的13月和 14月来算,这时C和y均按上一年取值。

)算出来的W除以7,余数是几就是星期几。

如果余数是0,则为星期日。

以2049年10月1日(100周年国庆)为例,用蔡勒(Zeller)公式进行计算,过程如下:蔡勒(Zeller)公式:w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1=49+[49/4]+[20/4]-2×20+[26× (10+1)/10]+1-1=49+[12.25]+5-40+[28.6]=49+12+5-40+28=54 (除以7余5)即2049年10月1日(100周年国庆)是星期5。

你的生日(出生时、今年、明年)是星期几?不妨试一试。

不过,以上公式只适合于1582年10月15日之后的情形(当时的罗马教皇将恺撒大帝制订的儒略历修改成格里历,即今天使用的公历)。

过程的推导:(对推理不感兴趣的可略过不看)星期制度是一种有古老传统的制度。

据说因为《圣经·创世纪》中规定上帝用了六天时间创世纪,第七天休息,所以人们也就以七天为一个周期来安排自己的工作和生活,而星期日是休息日。

从实际的角度来讲,以七天为一个周期,长短也比较合适。

万年历计算方法

万年历计算方法

万年历计算‎方法1。

平年365‎天(52周+1天),闰年366‎天(52周+2天)。

平年2月2‎8天,闰年2月2‎9天。

由于公元1‎月1日设为‎星期六,故3月1日‎为星期三。

——注意这个“三”为使算法达‎到最简,故本算法以‎“星期”为计算单位‎。

且选3月1‎日为基月。

2。

每400年‎整一闰,或每4年且‎不为百年的‎一闰。

(原因:地球绕太阳‎一周的时间‎是365天‎5小时46‎秒,为了使一年‎的天数为整‎数,将一年的天‎数定为36‎5天,余下的时间‎积累起来,四年就是2‎3小时15‎分4秒,将近一天,把这一天加‎在某年的二‎月而成29‎天,该年称为闰‎年,其它年称为‎平年。

但四年加一‎天又多用了‎44分56‎秒,这个数积满‎400年为‎三天。

因此400‎年中只能有‎97个闰年‎,所以凡能被‎400整除‎,或不能被1‎00整除但‎能被4整除‎的年份为闰‎年。

)所以百年%4=0闰或(年%4=0并且年<>0)闰。

3。

每 4年(3个平年+1个闰年)共208周‎+5天——注意这个“5天”每百年共1‎00*(208周+5天)-1天=5217周‎+5天——注意这个“5天”(整百年暂设‎为平年)每400年‎共4*(5217周‎+5天)+1天(整400年‎闰)=20871‎周+0天——注意这个“0天”和“1天”(4个整百年‎只有一个闰‎年)即400年‎一轮回!(原来万年历‎400年前‎是一家)蔡勒(Zelle‎r)公式历史上的某‎一天是星期‎几?未来的某一‎天是星期几‎?关于这个问‎题,有很多计算‎公式(两个通用计‎算公式和一‎些分段计算‎公式),其中最著名‎的蔡勒(Zelle‎r)公式即w=y+[y/4]+[c/4]-2c+[26(m+1)/10]+d-1公式中的符‎号含义如下‎,w:星期;c:世纪-1;y:年(两位数);m:月(m大于等于‎3,小于等于1‎4,即在蔡勒公‎式中,某年的1、2月要看作‎上一年的1‎3、14月来计‎算,比如200‎3年1月1‎日要看作2‎002年的‎13月1日‎来计算);d:日;[ ]代表取整,即只要整数‎部分。

星期的计算公式范文

星期的计算公式范文

星期的计算公式范文
1.按照日历周历法计算星期:
日历周历法是最常用的日期计算方法,以一周七天为周期,星期一为
起始点。

按照这种方法,星期的计算公式为:
星期=(日期的天数-1)÷7+1
其中,日期的天数是指从年的1月1日开始计算,到指定日期的天数。

例如,计算2024年5月15日是星期几:
所以,2024年5月15日是星期二
2.按照ISO周历法计算星期:
ISO周历法是按照国际标准化组织(ISO)制定的一种日期计算方法,以一周七天为周期,星期一为起始点。

按照这种方法,星期的计算公式为:星期=(日期的天数-星期减数)÷7+1
其中,星期减数是指离最接近的星期一的天数。

通常,星期减数为3
或4、如果星期减数为3,那么星期减数就是指距离最近的上一个星期一
的天数;如果星期减数为4,那么星期减数就是指距离最近的上一个星期
四的天数。

例如,计算2024年5月15日是星期几:
星期减数=3
所以,2024年5月15日是星期日。

需要注意的是,不同地区可能采用不同的计算方法来确定星期,所以上述公式仅适用于按照日历周历法或ISO周历法计算星期的情况。

总结起来,计算星期的公式可以分为按照日历周历法计算和按照ISO 周历法计算两种方式,根据具体的需求和地区的习惯来选择适合的公式。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

计算星期几的方法
计算任何一个日期是星期几的方法
蔡勒公式
W = [C/4] - 2C + y + [y/4] + [13 X(M+1) / 5] + d - 1 C是世纪数减1 , y是年份后两位,M是月份(从3月开始,1月和2月要按上一年的13月和14月来算,这时C和y 均按上一年取值),d 是日数。

求出W的值,再除以7,余几就是星期几,余数为0,则是星期天。

注意:[…]表示只取整数部分
注意:公式中如计算得出负数,不能按习惯的余数的概念
求余数,只能按数论中的余数的定义求余。

为了方便计算,我
们可以给它加上一个7的整数倍,使它变为一个正数,比如加
上7、14、21、28等,得到一个整数后,再除以7,余几,
说明这一天是星期几。

例1 : 2004年的9月1日是星期几?
C=20 y=04 M=9 d=1
W = [C/4] - 2C + y + [y/4] + [13 x(M+1) / 5] + d - 1 =[20/4] - 2 X20 + 04 + [04/4] + [13 X(9 + 1 ) /5] + 1
=5 - 40 + 4 + 1 + [13 X2] + 1 - 1
=5 - 40 + 4 + 1 + 26 + 1 - 1
=—4
W为负数不行,加7的倍数14,得10。

10除以7,余数为3 , 2004年的9月1日是星期三。

例2 : 2010年的7月15日是星期几?
C=20 y=10 M=7 d=15
W = [C/4] - 2C + y + [y/4] + [13 x(M+1) / 5] + d - 1 =[20/4] — 2 X20 + 10 + [10/4] + [13 X(7 + 1 ) /5] + 15 —1
=5 —40 + 10 + 2 + [13 X8/5] + 14
=—23 + 20 + 14
=11
11除以7余数为4, 2010年的7月15日是星期四。

链接:1世纪为100年2000年以后为21世纪,以此类

1个年代为10年90-99为90年代,以此类推!
女口:1900年是19世纪、1901年是20世纪、2000年
是20世纪、2001年是21世纪。

已知一个日期及对应的星期数
求另一个日期是星期几的简便算法
例①:2007年4月20日是星期五,5月25日是星期几?
第一步:算出相差的天数。

10+25=35
关键:1、不包括开始的那一天;
2、遇有大月以及平(闰)年的二月时要注意辨别;
第二步:算出有多少个星期及剩余几天。

35 +7=5 0
第三步:余数加上已知的星期数,就是要求的星期数(结
果大于7的减去7即可)。

0+5=5
答:2007年5月25日是星期五
例②:2007年4月3日是星期二,4月25日是星期几?
25-3==22 22 +7=3 ……1 1+2=3 答:2007 年4月25日是星期三
例③:2007年2月22日是星期四,5月3日是星期几?
6+31+30+3=70 70 +7=10 0+4=4
答:2007年5月3日是星期四
答案:星期五、星期一、
星期六、星期一、星期四、星期五 4+12=16 答:2007年 练习题:
1、 2010 年
2、 2010 年
3、 2010 年
4、 2010 年
5、 2010 年 16 -7=2 ……2 2+7-7=2 6月12日是星期二 2月3日是星期三, 2月25日是星期四, 3月19日是星期五, 5月18日是星期二, 1月10日是星期日,
12月25日是星期六, 3月12日是星期几? 4月12日是星期几? 5月22日是星期几? 4月12日是星期几? 8月12日是星期几? 7月16日是星期几?。

相关文档
最新文档