%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% TeX algorithm to compute an Easter date %
% ========================================= %
% %
% File: Easter2.tex v 2.5 02-10-16 23:22:50 %
% Author: (c) 1995, 2002 Stanislav Brabec utx@penguin.cz %
% %
% Copyright: Easter2.tex is freely distributable as a sample of %
% compact astronomic computations in plain TeX %
% %
% Usage: %
% virtex [&fmt] [\year[=]year] \input Easter2 %
% (writes result to Easter2.dvi, not console, sorry) %
% %
% Years available: 1900-2099 %
% %
% Based on Easter algorithm of Carl Friedrich Gauss. %
% Warning: Trying to understand the algorithm can take a very %
% long time and can cause a headache! Don't try it. %
% ... (And if you find a shorter algorithm, let me know!) %
% Note: I have also multi language version. %
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\def~#1{\catcode`#113}~:\let:\let~+:+\advance~`:`\year~$
:$\newcount~^:^\def~[:[\ifnum~?:?\the~]:]\fi~*:*\multiply
~/~'~(~)~;$($'$)$;^/#1#2{(#1\divide(#2*(-#2+#1(}'`/'{19}*'19
+'24/'{30})5;`/;4*;2+);;`/;7*;4+);;'*;6+);/)7+)'+)21
[)>55+)-7](31^:{; }^'{+)1 [)>(+)-(^:{/ }]}'^*{}[)=(^*{:}]^~{?)}
^;{March}^/{April}:~\ and '*~, ?`
\end