This article is from the Calendars FAQ, by Claus Tondering firstname.lastname@example.org with numerous contributions by others.
Each year is associated with an Epact.
The Epact is a measure of the age of the moon (i.e. the number of days
that have passed since an "official" new moon) on a particular date.
In the Julian calendar, the Epact is the age of the moon on 22 March.
In the Gregorian calendar, the Epact is the age of the moon at the
start of the year.
The Epact is linked to the Golden Number in the following manner:
Under the Julian calendar, 19 years were assumed to be exactly an
integral number of synodic months, and the following relationship
exists between the Golden Number and the Epact:
Epact = (11 * (GoldenNumber-1)) mod 30
If this formula yields zero, the Epact is by convention frequently
designated by the symbol * and its value is said to be 30. Weird?
Maybe, but people didn't like the number zero in the old days.
Since there are only 19 possible golden numbers, the Epact can have
only 19 different values: 1, 3, 4, 6, 7, 9, 11, 12, 14, 15, 17, 18, 20,
22, 23, 25, 26, 28, and 30.
In the Gregorian calendar reform, some modifications were made to the
simple relationship between the Golden Number and the Epact.
In the Gregorian calendar the Epact should be calculated thus (the
divisions are integer divisions, in which remainders are discarded):
1) Use the Julian formula:
JulianEpact = (11 * (GoldenNumber-1)) mod 30
2) Calculate the so-called "Solar Equation":
S = (3*century)/4
The Solar Equation is an expression of the difference between the
Julian and the Gregorian calendar. The value of S increases by one
in every century year that is not a leap year.
(For the purpose of this calculation century=20 is used for the
years 1900 through 1999, and similarly for other centuries,
although this contradicts the rules in section 2.13.3.)
3) Calculate the so-called "Lunar Equation":
L = (8*century + 5)/25
The Lunar Equation is an expression of the difference between the
Julian calendar and the Metonic cycle. The value of L increases by
one 8 times every 2500 years.
4) Calculate the Gregorian epact thus:
GregorianEpact = JulianEpact - S + L + 8
The number 8 is a constant that calibrates the starting point of
the Gregorian Epact so that it matches the actual age of the moon
on new year's day. Actually, this constant should have been 9, but
8 was probably chosen as a safety precaution; the calculation was
known to be inaccurate, and the sentiment was that it was better to
celebrate Easter too late than too early.
5) Add or subtract 30 until GregorianEpact lies between 1 and 30.
In the Gregorian calendar, the Epact can have any value from 1 to 30.
Example: What was the Epact for 1992?
GoldenNumber = 1992 mod 19 + 1 = 17
1) JulianEpact = (11 * (17-1)) mod 30 = 26
2) S = (3*20)/4 = 15
3) L = (8*20 + 5)/25 = 6
4) GregorianEpact = 26 - 15 + 6 + 8 = 25
5) No adjustment is necessary
The Epact for 1992 was 25.