Cálculo para saber a data da Páscoa

Aqui você poderá oferecer suas Contribuições, Dicas e Tutoriais (Texto ou Vídeo) que sejam de interesse de todos.

Moderador: Moderadores

Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Cálculo para saber a data da Páscoa

Mensagem por sygecom »

Código: Selecionar todos

FUNCTION CALCULO_PASCOA
/*
Leonardo Machado
Função para calcular a data da Pascoa
Fonte: http://pt.wikipedia.org/wiki/Cálculo_da_Páscoa
Data: 23/02/2011
Valido do ano de: 1900 até: 2199
*/
local a, b, c, d, e, dRET:=CTOD(SPACE(8)), nANO:=YEAR(DATE()), X:=24, Y:=5

IF nANO >= 2100 .AND. nANO <= 2199
   Y:=6
ENDIF

a=MOD(nANO,19)
b=MOD(nANO,4)
c=MOD(nANO,7)
d=MOD((19*a)+X,30)
e=MOD(((2*b)+(4*c)+(6*d)+Y),7)

if (d+e)<10
   dRET:=CTOD(ALLTRIM(STR( INT(d+e+22) ))+'/03/'+ALLTRIM(STR(nANO)))
else
   dRET:=CTOD(ALLTRIM(STR( INT(d+e-9)))+'/04/'+ALLTRIM(STR(nANO)))
endif
RETURN(dRET)
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Responder