Al intentar resolver un problema, a veces hay cómputos que nos hacen la
"Pascua" y que nos resultan muy difíciles de resolver, si no imposibles, o se
prolonga su resolución interminablemente. Estos cómputos pueden ser fórmulas,
funciones, algoritmos matemáticos, informáticos o de la vida diaria, como
¡llegar a fin de mes!
En los programas de ordenador, los informáticos colamos siempre
huevos de Pascua, que son ligeras bromas, como las que permite la calculadora de Google "
once in a blue moon", pero a veces se convierten en pesadas cuando son resultado de nuestros
frecuentes errores de cálculo...
Los que me conocéis ya sabéis que me gustan los cálculos complicados, y que la
luna me influye por mi signo zodiacal, y que además he publicado en este blog
varios calendarios con los días señalados de fiesta religiosas y paganas. El
titular lo dice muy claro, con
Cómputos que hacen la "Pascua" se trata
de cómo obtener el
cómputo eclesiástico, o sea, el conjunto de cálculos necesarios para determinar el día de la
Pascua de Resurrección y demás fiestas movibles, que se deducen del
Domingo de Pascua.
Durante el Renacimiento las tablas de cálculo para la Pascua se basaban en el
número áureo. Al cálculo de la fecha de Pascua se le llama en latín
Computus y ha servido para
que religiosos, astrónomos, matemáticos,
calculadoras humanas
y programadores se devanen los sesos hasta nuestros días.
La cuestión es cómo hacer que las fechas de Pascua, basadas en el
cómputo gregoriano, estén disponibles en todas las Iglesias Occidentales del mundo para que
pueda celebrarse su conmemoración simultánea siguiendo la
Reforma del Calendario Gregoriano
y que no coincidan nunca con la
Pascua judía, que
se celebra independientemente del día de la semana.
Todo ello me ha llevado a la recopilación de algunos de los algoritmos de
Cálculo del Domingo de Pascua - ver aquí
su implementación en varios lenguajes de programación (Easter Sunday en
inglés) ya que se basa en la primera
luna llena o plenilunio
de la primavera boreal. En la revista Ciencia Hoy se ve un
algoritmo en C++ y otros en el libro
Mapping time: the calendar and its history de E. G. Richards.
Como Excel es la hoja de cálculo por excelencia, se han desarrollado muchos
algoritmos basados en VBA y en fórmulas para obtener la Fecha o el Domingo de
Pascua y hasta un concurso para crear la fórmula más corta posible que lo
obtenga entre los años 1900 y 2078, patrocinado por
Hans Herber, un maestro Excel en Alemania.
En los siguientes ficheros Excel adjunto mi propia recopilación de algoritmos
de cálculo del Domingo de Pascua para las
Iglesias Occidentales:
En esta comparativa se introduce siempre el año como 4 dígitos (AAAA) en la
celda A1.
En la fila 1 se obtienen los Domingos de Pascua para cada una de las fórmulas
y llamadas a las funciones definidas por el usuario (
User Defined Functions - UDF).
En las filas 10 a 2029 aparece el cálculo del Domingo de Pascua para los años
1900 al 4099, respectivamente.
Las limitaciones conocidas de Excel con las fechas impiden calcularlos para
años gregorianos anteriores, desde 1583 al 1899.
NOTA: Excel para Windows utiliza el sistema de fechas 1900 y Excel para Macintosh
utiliza el sistema de fechas 1904.
Puedes ver y descargar los cómputos que hacen la Pascua desde
la nube de
Microsoft OneDrive. Desde aquí sin salir del blog:
Funciones VBA:
El algoritmo más preciso reconocido procede del
United States Naval Observatory - USNO
y lo creó J.-M. Oudin.
Obtiene el cómputo de todos los domingos de Semana Santa para el Calendario
Gregoriano, desde el año 1583 hasta el año 4099, aunque para Excel el rango
empieza en 1900:
Se llama en una celda cualquiera con:
=EasterUSNO(A1)
Otro algoritmo un poco más largo es el creado por Greg Mallen según los
estudios y tablas de Ronald W. Mallen:
Llamarlo con:
=EasterDate(1;1;A1)
Uno bastante más corto citado por
Cheap Pearson en su web es:
Por último incluyo una función que falla más que la fórmula original en la que
se basa y que fue propuesta por Norbert Hetterich para el concurso mencionado
arriba.
Fórmulas Excel:
Las fórmulas que soportan estos algoritmos se encuentra en la Red en inglés y
alemán, en su versión original, y las traduciré al español para poder
disfrutarlas.
Thomas Jansen planteó esta curiosísima fórmula que funciona entre los años
1900 y 2203:
Otra versión de Tomas Jansen:
Aconsejo usar esta versión transformada en formato de fechas internacional:
Norbert Hetterich propuso la siguiente pero falla en el año 2079:
Aconsejo usar esta versión transformada en formato de fechas internacional:
Por último, la siguiente megafórmula la he obtenido de la función de Greg
Mallen a partir del algoritmo de Ronald W. Mallen:
Esta última megafórmula está en la versión de Excel 2007 y 2010 pues no se
soportan fórmulas tan largas en Excel 2003.
¡Ahora si que necesito ayuda para entender estos cálculos!
Por favor, escríbeme un comentario si puedes ayudarme.
P.D.:
¿Qué tiene que ver esto con los Interfaces Gráficos de Usuario? Que la
información y los resultados aportados deben ser precisos y repetibles, como
los cálculos de los días de Semana Santa...
English translation of this post
here.
No Response to "Cómputos que hacen la "Pascua""
Leave A Reply
Indícame las erratas que encuentres y qué es lo que te gustaría ver en los próximos artículos.