[comp.lang.forth] Computing Easter

skip@rafos.gso.uri.edu (Skip Carter) (06/07/90)

	Here is how to calculate the date of Easter for ANY YEAR in
the Gregorian Calendar (i.e. after 1583), no exceptions.  The algorithm
is particulary well suited to Forth because of the /MOD operator.
This is from the book: Astronomical Formulae for Calculators, by Jean Meeus,
Published in 1982 by Willman-Bell Inc.

	Divide			by	Quotient	Remainder

	the year x		19	---		a
	the year x		100	b		c
	b			4	d		e
	b + 8			25	f		---
	b - f + 1		3	g		---
	19a + b - d - g + 15	30	---		h
	c			4	i		k
	32 + 2e + 2i - h - k	7	---		L
	a + 11h + 22L		45L	m		---
	h + L - 7m + 114	31	n		p


	Then n = the number of the month (3 = March, 4 = April)
p+1 = day of the month upon which Easter Sunday falls.

	Test cases:

	1978 -> March 26	1954 -> April 18
	1979 -> April 15	2000 -> April 23
	1980 -> April 6

Skip Carter			UUCP:	uunet!rafos!skip
School of Oceanography	    INTERNET:   skip@rafos.gso.uri.edu
University of Rhode Island     Phone:   401-792-6519
Narragansett, RI 02882