Elusive Easter


easter-bunnies.jpg
Photo by starline on Freepik

Christmas is easy to predict - it's the 25th of December. You know it's getting closer when hot cross buns start appearing in the supermarkets! Predicting the date of Easter Sunday is not so easy. This article describes how the churches agreed on when Easter Sunday should be celebrated and how it is calculated.

Easter is one of the trickiest holidays when it comes to planning events, and it can catch out even the most wary. Originally, Easter was associated by the early Church with the Jewish Passover, but the exact date has been controversial for centuries.

In 325 AD, a method of determining the date was agreed upon at the Council of Nicaea. This definition, which is still used today, is (wait for it):

“The first Sunday after the first full moon after or on the vernal equinox; and that if the full moon should occur on a Sunday and thereby coincide with the Passover festival, Easter should be commemorated on the Sunday following.”

Let’s look at the reasoning behind this statement. According to the New Testament, the feast of the Passover (The Last Supper) fell on a Thursday, and Christ was crucified the following day (Good Friday) and rose again on the third day (Easter Sunday).

This would have been reasonably straightforward if it wasn’t for the fact that the feast of the Passover occurs on the day of the first full moon after the spring equinox. This means that Passover falls on different days from year to year. Christians of Jewish origin were quite comfortable with this, but those of Gentile origin wanted to celebrate the Resurrection on — well — Easter Sunday.

All this led to the curious situation of different parts of the Church celebrating the Resurrection on different days. Those in the East observed Easter according to the date of the Passover festival, and those in the West celebrated Easter on a Sunday. This, in turn, led to the Council of Nicaea ruling and the definition given above. Although the spring equinox can fall between March 19 and 21 in the northern hemisphere, the official Church spring equinox is always March 21. I should also mention at this stage that, although no one has ever seen one, an “ecclesiastical moon” whose motion differs slightly from the real one is used for the calculations.

All this means Easter can fall on any Sunday between 22 March and 25 April, and, as you can imagine, this made plenty of work for astronomers.

Because the Earth goes round the Sun in 365.2422 days, the lunar month is 29.53 days, and the Julian calendar in use at that time was drifting out of synchronisation with the real year, calculating the date for Easter was a bit of an astronomical nightmare in the fourth century.

Adopting the Gregorian calendar in 1582 eliminated much of the difficulty in fixing the date of Easter. In 1752, the Gregorian calendar was also adopted in Great Britain and Ireland, and since that time, Easter has been celebrated on the same day in the Western part of the Christian world. The Eastern churches did not adopt the Gregorian calendar; most years, they commemorate Easter Sunday on a different date to the West. Occasionally, the dates coincide — the most recent times being 2007, 2010, 2011, 2014 and 2017. The next coincidence is 2025, when Easter Sunday will occur on the Gregorian calendar, April 20 2025, the same day as the Julian (Eastern) calendar.

Like most problems, working out the date for Easter for a particular year benefits from breaking the problem down into smaller problems. In this case, the two constituent problems are:

  • the dates of the Sundays between 22 March and 25 April, and
  • the dates of the Full Moon between 22 March and 25 April.

The “day of the week” (and hence the dates of the Sundays) can be worked out by referring to the tables in my Days of the Week article.

Working out the phases of the Moon (and hence the dates of the full Moon) is much more difficult, and an introduction to the subject is given in my article on The Moon and its Phases. In 2025, the first Full Moon after 21 March falls on Sunday, 13 April, so Easter Sunday will fall a week later on 20 April.

If you would like to calculate the date for Easter Sunday yourself, you could try the following method:

DivideByQuotientRemainder
The year x19-a
The year x100bc
b4de
b + 825f-
b - f + 13g-
19a + b - d - g + 1530-h
c4ik
32 + 2e + 2i - h - k7-l
a + 11h + 22l451m-
h + l - 7m + 11431no

Then n is the month of the year, and o + 1 is the day of the month on which Easter Sunday falls. For example, to find the date of Easter Sunday 2025:

DivideByQuotientRemainder
2025(x)19-11(a)
202510020(b)25(c)
(b=20)45(d)0(e)
(b=20) + 8251(f)-
(b=20) - (f=1) + 136(g)-
19(a=11) + (b=20) - (d=5) - (g=6) + 1530-23(h)
(c=25)46(i)1(k)
32 + 2(e=0) + 2(i=6) - (h=23) - (k=1)7-6(l)
(a=11) + 11(h=23) + 22(l=6)4510(m)-
(h=23) + (l=6) - 7(m=2) + 114314(n)19(o)

Therefore, Easter Sunday 2025 will fall on the 20th (o + 1) day of April (n).

For more information about quotients and remainders, see my article on Quotients and Remainders.

If you would prefer not to do all these sums, I have written a Python script, which you can find right at the bottom of this article.

No wonder moves are being made to have Easter on a fixed date. In fact, in 1928, a Bill was passed by the British Parliament which would allow the Church of England to ‘fix’ Easter to be the Sunday after the second Saturday in April. This would have the effect of restricting Easter between 9 April and 15 April. However, this Bill can only take effect after the World Council of Churches has agreed it. Assuming that this agreement may still be some time in coming, the table below gives the expected dates for Easter Sunday up to 2040.

Easter Sunday 2024–2040

YearDate
202431 Mar
202520 Apr
202605 Apr
202728 Apr
202816 Apr
202901 Apr
203021 Apr
203113 Apr
203228 Apr
203317 Apr
203409 Apr
203525 Apr
203613 Apr
203705 Apr
203825 Apr
203910 Apr
204001 Apr

Python script for calculating the date of Easter Sunday

import math  
  
run = 1  
months = ["March", "April"]  
  
def quotient(dividend,divisor):  
 quotient = math.trunc(dividend/divisor)  
 return quotient  
  
def remainder(dividend,divisor,quotient):  
 remainder = dividend - (quotient * divisor)  
 return remainder  
   
print("\n>>>>>>>> Easter Sunday <<<<<<<<\n")  
  
while(run == 1):  
 strX = input("Enter year: ")  
 x = int(strX)  
  
 q = quotient(x,19)  
 a = remainder(x,19,q)  
 b = quotient(x,100)  
 c = remainder(x,100,b)  
 d = quotient(b,4)  
 e = remainder(b,4,5)  
 f = quotient(b+8,25)  
 g = quotient(b-f+1,3)  
 r = (19*a)+b-d-g+15  
 q = quotient(r,30)  
 h = remainder(r,30,q)  
 i = quotient(c,4)  
 k = remainder(c,4,i)  
 s = 32 + (2*e) + (2*i) - h - k  
 q = quotient(s,7)  
 l = remainder(s,7,q)  
 t = a + (11*h) + (22*l)  
 m = quotient(t,451)  
 u = h + l -(7*m) + 114  
 n = quotient(u,31)  
 o = remainder(u,31,n)  
 print()  
   
 day = str(o + 1)  
 month = months[n-3]  
 year = str(x)  
   
 print("Easter Sunday is on " + day + " " + month + " " + year)  
 print()  
   
 run = int(input("1. Continue\n2. Exit \n\n"))  
 print()  
   
 if run == 2:  
  exit()

Originally published on LearningPages.org

Sort:  

Wow didnt knew you used python.

My favourite desktop/console language.

Congratulations @learningpages! You have completed the following achievement on the Hive blockchain And have been rewarded with New badge(s)

You received more than 300 upvotes.
Your next target is to reach 400 upvotes.

You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Check out our last posts:

Hive Power Up Day - April 1st 2024
Happy Birthday to the Hive Blockchain