
EasterCS is a program that computes when Easter comes in a given year:

  Easter Sunday is the Sunday following the Paschal Full Moon (PFM)
  date for the year.

  Western Easter Sunday date is based on Scientific American, March 2001,
  Mathematical Recreations by Ian Stewart, Page 82.
  The period is 5,700,000 years.
  Gregorian calendar started October 15, 1582 (previous day was Oct 4).
  Germany switched to Gregorian calendar in 1700.
  England and U.S. switched on Sept 14, 1752 (previous day was Sep 2).
  Earliest Easter Sunday is on March 22 (in year 1818 and 2285 for example)
  Latest Easter Sunday is on April 25 (in year 1943 and 2038 for example).

  The Date of Orthodox Easter:
  This simple algorithm is listed in the Calendar FAQ by Claus Tondering.
  It is based on Oudin's algorithm. E-mail: c-t@pip.dknet.dk.

  See:
  http://www.assa.org.au/edm.html
  http://www.smart.net/~mmontes/ortheast.html
  http://www.tondering.dk/claus/calendar.html
  http://www.geocities.com/hjsmithh/Easter/index.html

--------------------------------------------------------------------------------

There are three parameters that can be set by the user:

Year - The year that will be displayed when the run form starts. It is also
used by the Year-1 and Year+1 command buttons on the run form.

Start Year - The first year used when a list of dates are generated.

End Year - The last year used when a list of dates are generated.

These three parameters can be initially set on the Startup form and can be
changed on the Run form. Their values are limited to be from 1 to 10,000,000.

--------------------------------------------------------------------------------

Command buttons -

There are 17 command buttons on the Run form:

  Clear Log File: Clears the log file. Same as Ctrl+F9 key.


  Logging Is On/Off: Toggle Logging to Log file on/off. Same as F9 key.


  Reset: Reset text boxes and display year. Same as F8 Key:

If any of the three text boxes, Year, Start Year, or End Year, has illegal
values, they are reset to their previous good values. The dates for Year will
be displayed in the output text box.


  Abort Calc.: Interrupt/Abort a long calculation. Same as ESC key.


  Clear Output: Clear output text box. Same as F11 key.


  Configuration: Display Configuration form. Same as F6 key:


  O By G Freq: Compute and display. Same as F7 key:

Gregorian Calendar, Frequency of Dates of Orthodox Easter
will be displayed for dates from Start Year to End Year.
For example:
Easter Sunday: 4/ 9  12 Times in 250 Years, 4.8 %


  O By J Freq: Compute and display. Same as Ctrl+F7 key:

Julian Calendar, Frequency of Dates of Orthodox Easter
will be displayed for dates from Start Year to End Year.
For example:
Easter Sunday: 4/ 6  11 Times in 250 Years, 4.4%


  Year-1: Compute for previous year. Same as Ctrl+M key:

The Year will be reduced by one and the dates for this Year will be
displayed in the output text box.


  Year+1: Compute for next year. Same as Ctrl+P key:

The Year will be increased by one and the dates for this Year will be displayed
in the output text box.


  W O By Year: Compute and display. Same as F3 key:

Gregorian Calendar Easter dates for years Start Year to End Year
will be displayed.
For example:
Easter Sunday: 2009  4/12 Western  4/19 Orthodox  (April  6 Julian date)


  W By Date: Compute and display. Same as F4 key:

Gregorian Calendar Years when Western Easter falls on a given date
will be displayed for dates from Start Year to End Year.
For example:
3/31   1907 1918 1929 1991 2002 2013 2024 2086 2097


  W Frequency: Compute and display. Same as Ctrl+F key:

Gregorian Calendar, Frequency of Dates of Western Easter
will be displayed for dates from Start Year to End Year.
For example:
Easter Sunday: 4/10  11 Times in 250 Years, 4.4 %


  O By G Date: Compute and display. Same as F5 key:

Gregorian Calendar Years when Orthodox Easter falls on a given date
will be displayed for dates from Start Year to End Year.
For example:
4/19   1903 1914 1925 1987 1998 2009 2020 2071 2082 2093


  O By J Date: Compute and display. Same as Ctrl+F5 key:

Julian Calendar Years when Orthodox Easter falls on a given date
will be displayed for dates from Start Year to End Year.
For example:
 4/ 6   1903 1914 1925 1987 1998 2009 2020 2071 2082 2093 2104


  Plot: Brings up the Plot form and plot. Same as F12 key:

When the Plot form comes up it will display a plot of the last frequency
calculation W Frequency or O By J Freq. If these calculations have not yet been
made, the W Frequency is performed and then plotted. 


  Quit: Quit and go back to the Startup form. Same as F2 Key:

If a calculation is running, indicated by the word **Running** displayed on the
Run form, when Quit is clicked or F2 is pressed; it is treated as an Abort
Calc. request, with the message:

      When **Running**, select Quit twice to quit

is displayed in the text output text box and a second quit request is required
to quit.

If a calculation is not running, the File menu Exit, the Run form's Close button
Alt+F4, or Upper right hand X button will totally end the program without
stopping at the Startup form. The Quit button or F2 will close all open forms
and return to the Startup form with the currently selected parameters.

The Run form has a File and a Help menu button. The File menu has Exit. The Help
menu has Help form and About...

Exit is the same as the Quit button except it does a complete exit.

Help form is the same as the F1 key and causes the Help form to be displayed.
About will bring up a dialog box with Application Title, Version, Application Description and a URL to obtain the latest version of the program.


There are 9 command buttons on the Plot form:

  W Frequency: Compute and display a plot:

This will use the current Start Year and End Year from the Rum form and perform
a W Frequency on the Run form, then plot the results.


  W Frequency 7600: Compute and display a plot:

This is the same as the W Frequency command button except the Start Year and
End Year on the Run form are first changed to 1900 and 9499 respectively to
produce a 7600 year report and plot.


  W Frequency 5700000: Compute and display a plot:

This is the same as the W Frequency command button except the Start Year and
End Year on the Run form are first changed to 1900 and 5701899 respectively to
produce a 5700000 year report and plot.


  Plot: Display a plot:

This will display a plot of the last frequency calculation W Frequency or
O By J Freq performed on the Run Form or Plot form.


  O By Freq: Compute and display a plot:

This will use the current Start Year and End Year from the Rum form and perform
an O By Freq on the Run form, then plot the results.


  O By Freq 7600: Compute and display a plot:

This is the same as the O By Freq command button except the Start Year and
End Year on the Run form are first changed to 1900 and 9499 respectively to
produce a 7600 year report and plot.


  O By Freq 5700000: Compute and display a plot:

This is the same as the O By Freq command button except the Start Year and
End Year on the Run form are first changed to 1900 and 5701899 respectively to
produce a 5700000 year report and plot.


  About: Display the About information:

About will bring up a dialog box with Application Title, Version, Application
Description and URL to obtain the latest version of the program.


  Exit: Close the Plot form and return to the Run form.


Notes about the numbers 7600 and 5700000:

Earlier programs use the table:

{ Easter falls on the first Sunday following the arbitrary Paschal Full Moon,
  which does not necessarily coincide with a real or astronomical full moon.
  The Paschal Full Moon is calculated by adding 1 to the remainder obtained
  by dividing the year by 19 and applying the following table:

    1 - Apr. 14    6 - Apr. 18   11 - Mar. 25   16 - Mar. 30
    2 - Apr.  3    7 - Apr.  8   12 - Apr. 13   17 - Apr. 17
    3 - Mar. 23    8 - Mar. 28   13 - Apr.  2   18 - Apr.  7
    4 - Apr. 11    9 - Apr. 16   14 - Mar. 22   19 - Mar. 27
    5 - Mar. 31   10 - Apr.  5   15 - Apr. 10
}

But this table is only good for the years 1894 through 2203 (310 years).

Using this table causes Easter dates to have a period of 7600 years (19 * 400)
The true period is 5,700,000 years. 


--------------------------------------------------------------------------------

            +------------Function Keys on Run form------------+
            |   F1  => Display Help form                      |
            |   F2  => Quit and go back to the Startup form   |
            |   F3  => Compute and display W O By Year        |
            |   F4  => Compute and display W By Date          |
            |   F5  => Compute and display O By G Date        |
            |   F6  => Display Configuration form             |
            |   F7  => Compute and display O By G Freq        |
            |   F8  => Reset text boxes and display year      |
            |   F9  => Toggle Logging to Log file on/off      |
            |   F11 => Clear output text box                  |
            |   F12 => Brings up the Plot form and plot       |
            |   Ctrl+F5 => Compute and display O By J Date    |
            |   Ctrl+F7 => Compute and display O By J Freq    |
            |   Ctrl+F9 => Clear Log File                     |
            |   Ctrl+F => Compute and display W Frequency     |
            |   Ctrl+M => Compute for previous year, year-1   |
            |   Ctrl+P => Compute for next year, year+1       |
            |   ESC => Interrupt/Abort a long calculation     |
            +-------------------------------------------------+

--------------------------------------------------------------------------------


-Harry
