MathGroup Archive 2003

[Date Index] [Thread Index] [Author Index]

Search the Archive

Calculating Easter

  • To: mathgroup at smc.vnet.net
  • Subject: [mg40670] Calculating Easter
  • From: wself at msubillings.edu (Will Self)
  • Date: Sat, 12 Apr 2003 03:13:45 -0400 (EDT)
  • Sender: owner-wri-mathgroup at wolfram.com

An example of the function below is

easter[2003]   --->
In the year 2003, Easter falls on April 20.


Press, 1965, page 168:
"...we shall give a purely numerical rule -- subject to no exceptions
of any kind -- which calculates the date of Easter from a knowledge
only of the year number..."

I have retained O'Beirne's same variable names, except that I added
the variable nn.

easter[year_] := 
  Module[{x = year, b, c, d, e, g, h, i, k, mu, lambda, n, p, nn},
    a = Mod[x, 19];
    b = Quotient[x, 100];
    c = Mod[x, 100];
    d = Quotient[b, 4];
    e = Mod[b, 4];
    g = Quotient[8b + 13, 25];
    h = Mod[19a + b - d - g + 15, 30];
    mu = Quotient[a + 11h, 319];
    i = Quotient[c, 4];
    k = Mod[c, 4];
    lambda = Mod[2e + 2i - k - h + mu + 32, 7];
    n = Quotient[h - mu + lambda + 90, 25];
    p = Mod[h - mu + lambda + n + 19, 32];
    nn = Switch[n, 3, "March ", 4, "April "];
    Print[
      "In the year " <> ToString[x] <> ", Easter falls on " <> nn <> 
        ToString[p] <> "."];]


  • Prev by Date: Re: thanks for the help with list - extended syntax question
  • Next by Date: Re: thanks for the help with list - extended syntax question
  • Previous by thread: Radio Buttons, Check Boxes, etc.
  • Next by thread: Re: Calculating Easter