mercoledì 31 dicembre 2008

ASP - Calcolare il giorno della Pasqua

In questo post mostrerò come calcolare il giorno della pasqua a partire da un anno.

Si tratta di una funzione ASP molto semplice alla quale passare un anno oppure una data.

La funzione è questa:


<%
  'Script per il calcolo della pasqua
  'Autore: Marco Brunelli - www.giuba.it
  function calcolapasqua(data)
    dim X,A,B,C,D,E,F,G,H,M,J,K,L,N,P,Pday
    if isdate(data) then
      'se ho passato una data
      X=year(data)
    else
      'se ho passato un numero
      X=data
    end if
    'calcolo la pasqua
    A=X mod 19
    B= int(X/100)
    C=X mod 100
    D=int(B/4)
    E=B mod 4
    G=int((8*B+13)/25)
    H=(19*A+B-D-G+15)mod 30
    M=int((A+11*H)/319)
    J=int(C/4) K=C mod 4
    L=(2*E+2*J-K-H+M+32) mod 7
    N=int((H-M+L+90)/25)
    P=(H-M+L+N+19)mod 32
    Pday=P & "/" & N & "/" & X
    calcolapasqua= formatdatetime(Pday,1)
  end function
%>


Basta passare alla funzione un anno (numero intero positivo) o una data e questa ti "sparerà fuori" il giorno della pasqua!
Se non vuoi vedere il giorno (domenica) come risultato della funzione, nella penultima riga metti questo

calcolapasqua= formatdatetime(Pday)

al posto di

calcolapasqua= formatdatetime(Pday,1)


In alternativa cerca una guida della funzione asp "formatdatetime" !

Attenzione a passare valori corretti alla funzione. Questa volta non ho fatto il controllo di errori!

Come sempre per i più pigri linko o zippino con lo script già fatto!