*--------------------------------------------------------------- * FUNCTION _Pascua(tnAnio) *--------------------------------------------------------------- * USE: _Pascua(1999) * PARAMETRO: Año a calcular * RETORNO: Fecha del Domingo de Pascua *--------------------------------------------------------------- FUNCTION _Pascua(tnAnio) LOCAL lnCentena, lnAux, lnNroAureo, lnDomingo, lnEpactaJul, ; lnCorrSolar, lnCorrLunar, lnEpactaGreg, lnDiasLunaP, ; lnDiasLuna15, lnDiasPascua, ldFecIni, ldFecPascua IF NOT BETWEEN(tnAnio,1000,9999) MESSAGEBOX("Rango inválido [1000..9999]") RETURN {//} ENDIF lnCentena = INT(tnAnio / 100) lnAux = (tnAnio + 1) % 19 lnNroAureo = lnAux + (19 * INT((19 - lnAux) / 19)) lnDomingo = 7 + (1 - tnAnio - INT(tnAnio / 4) + lnCentena - INT(lnCentena / 4)) % 7 lnEpactaJul = ((11 * lnNroAureo) - 10) % 30 lnCorrSolar = - (lnCentena - 16) + INT((lnCentena- 16) / 4) lnCorrLunar = INT((lnCentena - 15 - INT((lnCentena - 17) / 25)) / 3) lnEpactaGreg = (30 + lnEpactaJul + lnCorrSolar + lnCorrLunar) % 30 lnDiasLunaP = 24 - lnEpactaGreg + (30 * INT(lnEpactaGreg / 24)) lnDiasLuna15 = (27 - lnEpactaGreg + (30 * INT(lnEpactaGreg / 24))) % 7 lnDiasPascua = lnDiasLunaP + (7 + lnDomingo - lnDiasLuna15) % 7 ldFecIni = DATE(tnAnio, 03, 21) ldFecPascua = ldFecIni + lnDiasPascua RETURN ldFecPascua ENDFUNC
Menu
▼
29 de abril de 2000
Calcular el domingo de pascua de un año
Con esta función podemos conocer la fecha del Domingo de Pascua de cualquier año.
No hay comentarios.:
Publicar un comentario
Los comentarios son moderados, por lo que pueden demorar varias horas para su publicación.