Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- DIAFECHA(FE) ;
- N (FE)
- Q:FE=""
- ; algoritmo de Gauss
- S ANO=$E(FE,1,4) S MES=+$E(FE,5,6) S DIA=+$E(FE,7,8)
- S DOSANO=+$E(ANO,3,4),CC=+$E(ANO,1,2)
- ;
- I FE>15821014 S MOD=CC#4 S A=$S(MOD=1:5,MOD=2:3,MOD=3:1,MOD=0:0)
- ; I FE>17000000 S A=$S(ANO>2199:-4,ANO>2099:-2,ANO>1999:0,ANO>1899:1,ANO>1799:3,ANO>1699:5,1:0)
- I FE<15821015 S A=19-CC
- ; rizando el rizo para en españa dias anteriores al 4 de oct pasó al 15 de oct de 1582
- ; para los ingleses dle 3 sept de 1752 al 14 de sept de 1752
- ;
- S CUARTO=DOSANO\4 S B=DOSANO+CUARTO
- ; bisiesto
- S C=0
- I ANO#4=0 I DOSANO'=0 S I (MES=1)!(MES=2) S C=-1
- I ANO#4=0 I DOSANO=0 I ANO#400=0 I (MES=1)!(MES=2) S C=-1
- ;
- S D=$S(MES=1:6,MES=2:2,MES=3:2,MES=4:5,MES=5:0,MES=6:3,MES=7:5,MES=8:1,MES=9:4,MES=10:6,MES=11:2,MES=12:4)
- ;
- S E=DIA
- ;
- S SUMA=A+B+C+D+E
- S R=SUMA#7
- S RESUL=$S(R=1:"LUNES",R=2:"MARTES",R=3:"MIERCOLES",R=4:"JUEVES",R=5:"VIERNES",R=6:"SABADO",R=0:"DOMINGO")
- Q RESUL
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement