And there is // to get the remainder of a division. 2010/12/29 Gentry, Stephen <stephen.gen...@lafayettelife.com>
> So it would appear. At least it works for me. > I didn't know about the "%" (w/o quotes). > I learned something today. > > > -----Original Message----- > From: The IBM z/VM Operating System [mailto:ib...@listserv.uark.edu] On > Behalf Of Les Koehler > Sent: Wednesday, December 29, 2010 11:01 AM > To: IBMVM@LISTSERV.UARK.EDU > Subject: Re: Movable Feasts > > So just change the / to % and you have a Rexx program :-) > > Les > > Jim Bohnsack wrote: > > Here are dates that could be put into a table. > > > > The following are dates of Easter from 1980 to 2024: > > > > 1980 April 6 1995 April 16 2010 April 4 > > > > 1981 April 19 1996 April 7 2011 April 24 > > > > 1982 April 11 1997 March 30 2012 April 8 > > > > 1983 April 3 1998 April 12 2013 March 31 > > > > 1984 April 22 1999 April 4 2014 April 20 > > > > 1985 April 7 2000 April 23 2015 April 5 > > > > 1986 March 30 2001 April 15 2016 March 27 > > > > 1987 April 19 2002 March 31 2017 April 16 > > > > 1988 April 3 2003 April 20 2018 April 1 > > > > 1989 March 26 2004 April 11 2019 April 21 > > > > 1990 April 15 2005 March 27 2020 April 12 > > > > 1991 March 31 2006 April 16 2021 April 4 > > > > 1992 April 19 2007 April 8 2022 April 17 > > > > 1993 April 11 2008 March 23 2023 April 9 > > > > 1994 April 3 2009 April 12 2024 March 31 > > > > > > > > > > Here's the formula. It's a SMOP (simple matter of programming). > > > > > > Computing the Date of Easter > > > > The rule is that Easter is the first Sunday after the first > > ecclesiastical full moon that occurs on or after March 21. The lunar > > cycles used by the ecclesiastical system are simple to program. The > > following algorithm will compute the date of Easter in the Gregorian > > Calendar system. > > > > Please note the following: *This is an _integer_ calculation. All > > variables are integers and all remainders from division are dropped.* > > > > The algorithm uses the year, /y/, to give the month, /m/, and day, > /d/, > > of Easter. The symbol * means multiply. > > > > c = y / 100 > > n = y - 19 * ( y / 19 ) > > k = ( c - 17 ) / 25 > > i = c - c / 4 - ( c - k ) / 3 + 19 * n + 15 > > i = i - 30 * ( i / 30 ) > > i = i - ( i / 28 ) * ( 1 - ( i / 28 ) * ( 29 / ( i + 1 ) ) > > * ( ( 21 - n ) / 11 ) ) > > j = y + y / 4 + i + 2 - c + c / 4 > > j = j - 7 * ( j / 7 ) > > l = i - j > > m = 3 + ( l + 40 ) / 44 > > d = l + 28 - 31 * ( m / 4 ) > > > > > > For example, using the year 2010, > > y=2010, > > c=2010/100=20, > > n=2010 - 19 x (2010/19) = 15, > > etc. resulting in Easter on April 4, 2010. > > > > The algorithm is due to J.-M. Oudin (1940) and is reprinted in the > > Explanatory Supplement to the Astronomical Almanac > > <http://aa.usno.navy.mil/publications/docs/related.html#expsup>, ed. > P. > > K. Seidelmann (1992). See Chapter 12, "Calendars" > > <http://astro.nmsu.edu/%7Elhuber/leaphist.html>, by L. E. Doggett. > > > > Jim > > > > > > > > On 12/29/2010 8:42 AM, Buettner, Wolfgang wrote: > >> This is a multi-part message in MIME format. > >> > >> ------_=_NextPart_001_01CBA75E.2DEACDB1 > >> Content-Type: text/plain; > >> charset=us-ascii > >> Content-Transfer-Encoding: quoted-printable > >> > >> We have some services which should be up during normal working hours > >> only, i.e. not on weekends and not on public holidays either. > >> > >> Could be done by WAKEUP, but ... > >> > >> How to code movable feasts like Easter Monday and others depending on > >> the first full moon in spring? > >> > >> I know the formula is complex, so I believe it would be very much > >> simpler to get those dates from an actual calendar and hard-code them > >> each year than to write a REXX. > >> > >> Any other ideas? > >> > >> > >> > >> Thank you and a Happy New Year, > >> > >> Wolfgang > >> > >> > >> Software AG - Group Executive Board: Karl-Heinz Streibich > >> (Vorsitzender/Chai= > >> rman), Arnd Zinnhardt, Mark Edwards, David Broadbent, Josef > >> Bommersbach, Dr.= > >> Wolfram Jost, Kamyar Niroumand, Ivo Totev > >> > >> Sitz/Registered office: Uhlandstra?e 12, 64297 Darmstadt, Germany, - > >> Registe= > >> rgericht/Commercial register: Darmstadt HRB 1562 - Vorstand/ > >> Management Boar= > >> d: Karl-Heinz Streibich (Vorsitzender/Chairman), David Broadbent, Dr. > > >> Wolfra= > >> m Jost, Arnd Zinnhardt; - Aufsichtsratsvorsitzender/ Chairman of the > >> Supervi= > >> sory Board: Dr. Andreas Bereczky - http://www.softwareag.com/ > >> > >> > >> ------_=_NextPart_001_01CBA75E.2DEACDB1 > >> Content-Type: text/html; > >> charset=us-ascii > >> Content-Transfer-Encoding: quoted-printable > >> > >> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 > >> Transitional//EN"><HTML><head><M= > >> ETA content=3D"text/html; charset=3Dus-ascii" > >> http-equiv=3D"Content-Type"> > >> > >> > >> > >> > >> > >> <META content=3D"text/html; charset=3Dus-ascii" > >> http-equiv=3DContent-Type> > >> <META content=3D"MSHTML 8.00.6001.18999" > name=3DGENERATOR></head><BODY> > >> <DIV><FONT FACE=3D"Trebuchet MS" SIZE=3D"1"><FONT SIZE=3D"3"> > >> <DIV><FONT face=3DArial size=3D2><SPAN class=3D729260409-01122010> > >> <P class=3DMsoNormal style=3D"MARGIN: 0cm 0cm 0pt"><SPAN lang=3DEN-GB > > >> style= > >> =3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; mso-ansi-language: EN-GB">We > > >> have s= > >> ome services which should be up during normal working hours > >> only, i.e. not on weekends and not on public holidays > either.</SPAN></P> > >> <P class=3DMsoNormal style=3D"MARGIN: 0cm 0cm 0pt"><SPAN lang=3DEN-GB > > >> style= > >> =3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; mso-ansi-language: > >> EN-GB"></SPAN><S= > >> PAN lang=3DEN-GB style=3D"mso-ansi-language: EN-GB"><?xml:namespace > >> prefix = > >> =3D o ns =3D > >> "urn:schemas-microsoft-com:office:office" /><o:p><SPAN > >> class=3D729260409-011= > >> 22010>Could be done by WAKEUP, but > >> =2E.. </SPAN></o:p></SPAN></P> > >> <P class=3DMsoNormal style=3D"MARGIN: 0cm 0cm 0pt"><SPAN lang=3DEN-GB > > >> style= > >> =3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; mso-ansi-language: > EN-GB">How > >> to co= > >> de movable feasts like Easter Monday and others > >> depending on the first full moon in spring?</SPAN><SPAN lang=3DEN-GB > >> style= > >> =3D"mso-ansi-language: EN-GB"><o:p></o:p></SPAN></P> > >> <P class=3DMsoNormal style=3D"MARGIN: 0cm 0cm 0pt"><SPAN lang=3DEN-GB > > >> style= > >> =3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; mso-ansi-language: EN-GB">I > >> know th= > >> e formula is complex, so<SPAN class=3D729260409-01122010> I > >> believe</SPAN> it would be very much simpler to <SPAN > >> class=3D7292= > >> 60409-01122010>get</SPAN>those dates<SPAN class=3D729260409-01122010> > >> from an actual calendar and hard-code them</SPAN> each year than > > >> to wri= > >> te a > >> REXX.</SPAN><SPAN lang=3DEN-GB style=3D"mso-ansi-language: > >> EN-GB"><o:p></o:p= > >>> </SPAN></P> > >> <P class=3DMsoNormal style=3D"MARGIN: 0cm 0cm 0pt"><SPAN lang=3DEN-US > > >> style= > >> =3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; mso-ansi-language: > EN-US">Any > >> other= > >> ideas? </SPAN><SPAN lang=3DEN-GB style=3D"mso-ansi-language: > >> EN-GB"><o= > >> :p></o:p></SPAN></P> > >> <P class=3DMsoNormal style=3D"MARGIN: 0cm 0cm 0pt"><SPAN lang=3DEN-GB > > >> style= > >> =3D"mso-ansi-language: EN-GB"><FONT size=3D3><FONT face=3D"Times New > >> Roman">= > >> <o:p></o:p></FONT></FONT></SPAN></P> > >> <P class=3DMsoNormal style=3D"MARGIN: 0cm 0cm 0pt"><SPAN lang=3DEN-GB > > >> style= > >> =3D"FONT-FAMILY: Arial; FONT-SIZE: 10pt; mso-ansi-language: > >> EN-GB">Thank you= > >> <SPAN class=3D729260409-01122010> and a Happy New > >> Year</SPAN>,</SPAN><SPAN lang=3DEN-GB style=3D"mso-ansi-language: > >> EN-GB"><o:= > >> p></o:p></SPAN></P> > >> <P class=3DMsoNormal style=3D"MARGIN: 0cm 0cm 0pt"><SPAN lang=3DES > >> style=3D"= > >> FONT-FAMILY: Arial; FONT-SIZE: 10pt">Wolfgang</SPAN><SPAN > >> lang=3DES><o:p></o= > >> :p></SPAN></P></SPAN></FONT></DIV></FONT><BR></FONT> > >> <DIV ALIGN=3D"left"><FONT FACE=3D"Trebuchet MS"> </FONT></DIV> > >> <DIV ALIGN=3D"center"> > >> <TABLE BORDER=3D"1" BORDERCOLOR=3D"#666666" CELLPADDING=3D"5" > >> CELLSPACING= > >> =3D"0" WIDTH=3D"100%"> > >> <TBODY> > >> <TR> > >> <TD> > >> <DIV ALIGN=3D"left"><SPAN CLASS=3D"style3"><FONT COLOR=3D"gray"><FONT > > >> FACE= > >> =3D"Trebuchet MS"><FONT SIZE=3D"1"><SPAN CLASS=3D"style4"> > >> Software AG– Group Executive Board: Karl-Heinz Streibich > >> (Vorsitzende= > >> r/Chairman), Arnd Zinnhardt, Mark Edwards, David Broadbent, Josef > >> Bommersbac= > >> h, Dr. Wolfram Jost, Kamyar Niroumand, Ivo Totev<BR><BR> > >> Sitz/Registered office: Uhlandstraße 12, 64297 Darmstadt, > >> Germany,R= > >> 11; Registergericht/Commercial register: Darmstadt HRB 1562 - > >> Vorstand/ Mana= > >> gement Board: Karl-Heinz Streibich (Vorsitzender/Chairman), David > >> Broadbent,= > >> Dr. Wolfram Jost, Arnd Zinnhardt; - Aufsichtsratsvorsitzender/ > >> Chairman of = > >> the Supervisory Board: Dr. Andreas > Bereczky</SPAN>-</FONT></FONT></FONT>= > >> <A HREF=3D"http://www.softwareag.com/"><FONT COLOR=3D"gray"><FONT > >> FACE=3D"Tr= > >> ebuchet MS"><FONT SIZE=3D"1"><FONT > >> COLOR=3D"navy"><STRONG>http://www.softwar= > >> eag.com</STRONG></FONT> > >> </FONT></FONT></FONT></A></SPAN></DIV></TD></TR></TB= > >> ODY></TABLE></DIV> > >> <DIV ALIGN=3D"left"><FONT FACE=3D"Trebuchet MS" SIZE=3D"1"> > >> </FONT></DIV> > >> <DIV><FONT FACE=3D"Trebuchet MS" > >> SIZE=3D"1"><BR></FONT></DIV></DIV></BODY></= > >> HTML> > >> > >> ------_=_NextPart_001_01CBA75E.2DEACDB1-- > > > -- Kris Buelens, IBM Belgium, VM customer support