復活節日期算法
復(fu)(fu)活(huo)節(jie)(jie)(Easter),是(shi)紀(ji)念耶(ye)穌基督復(fu)(fu)活(huo)的(de)(de)節(jie)(jie)日,在(zai)西(xi)方(fang)教會傳統里,春分之后第(di)一次滿(man)月(yue)之后的(de)(de)第(di)一個星期(qi)(qi)日即為(wei)復(fu)(fu)活(huo)節(jie)(jie)。東方(fang)教會則規定(ding),如(ru)果(guo)滿(man)月(yue)恰逢星期(qi)(qi)日,則復(fu)(fu)活(huo)節(jie)(jie)再推遲一周。因此,節(jie)(jie)期(qi)(qi)大致在(zai)3月(yue)22日至4月(yue)25日之間。也許大家都不知(zhi)道(dao)其實(shi)復(fu)(fu)活(huo)節(jie)(jie)是(shi)是(shi)可以算出(chu)來的(de)(de),那(nei)么(me)復(fu)(fu)活(huo)節(jie)(jie)日期(qi)(qi)算法(fa)究竟是(shi)怎么(me)樣的(de)(de)呢?下面我們一起(qi)來看看。
復活節日期算法:
年份只限(xian)于1900年到2099年
NO.1 設要求(qiu)的(de)那一(yi)年(nian)是Y年(nian),從Y減去1900,其差記為(wei)N。
NO.2 用(yong)19作除數(shu)(shu)去除N,余數(shu)(shu)記(ji)為A。
NO.3 用4作除(chu)數(shu)去除(chu)N,不管余數(shu),把商(shang)記為(wei)Q。
NO.4 用(yong)19去(qu)除7A+1,把商記為B,不管余數。
NO.5 用29去除11A+4-B,余(yu)數記為(wei)M。
NO.6 用7去(qu)除N+Q+31-M,余數(shu)記為W。
NO.7 計算(suan)25-M-W。
得出答數(shu)(shu)即(ji)可(ke)定出復活節(jie)的日期。若為(wei)正(zheng)數(shu)(shu),月(yue)(yue)(yue)份為(wei)4月(yue)(yue)(yue),如(ru)為(wei)負數(shu)(shu),月(yue)(yue)(yue)份為(wei)3月(yue)(yue)(yue)。若為(wei)0,則(ze)為(wei)3月(yue)(yue)(yue)31日。
下面我們來舉個實例,1983年的復活節日期。
1. 1983-1900=83, N=83
2. N/19=4余7, A=7
3. N/4=20余(yu)3, Q=20
4. 7A+1=50,50/19=2余12, B=2
5. 11A+4-B=79,79/29=2余21, M=21
6. N+Q+31-M=113,113/7=16余1, W=1
7. 25-M-W=3
由此可知,1983年的復活節(jie)日(ri)期是4月3日(ri)。
有了這復(fu)活(huo)節日期算法(fa),大(da)家(jia)就不(bu)用愁不(bu)知(zhi)道復(fu)活(huo)節是幾月幾日了。不(bu)過(guo)需(xu)要注意的(de)是,以上的(de)算法(fa)只適用于(yu)1900年到(dao)2099年的(de)哦(e)!