Cálculo de feriados móveis em Gambas3
Publicado por Alvaro G B Rodrigues em 26/03/2018
[ Hits: 2.825 ]
Public Function FeriadoMovel(Ano As Integer) As Date
Dim a, b, c, d, e, f, g, h, i, k, l, m, mes, dia As Integer
Dim Pascoa As Date
a = Ano Mod 19
b = Int(Ano / 100)
c = Ano Mod 100
d = Int(b / 4)
e = b Mod 4
f = Int((b + 8) / 25)
g = Int((b - f + 1) / 3)
h = (19 * a + b - d - g + 15) Mod 30
i = Int(c / 4)
k = c Mod 4
l = (32 + 2 * e + 2 * i - h - k) Mod 7
m = Int((a + 11 * h + 22 * l) / 451)
mes = Int((h + l - 7 * m + 114) / 31)
dia = ((h + l - 7 * m + 114) Mod 31) + 1
Pascoa = CDate(mes & "/" & dia & "/" & Ano)
Return Pascoa
End Function
Public Sub Button1_Click()
Dim ano As Integer
Dim pascoa As Date
Dim sexta As Date
Dim carna As Date
Dim corpus As Date
txtAno.Select()
ano = CInt(txtAno.Text)
pascoa = FeriadoMovel(ano)
sexta = DateAdd(pascoa, gb.day, -2)
carna = DateAdd(pascoa, gb.day, -47)
corpus = DateAdd(pascoa, gb.day, 60)
txtPascoa.Text = Format$(pascoa, "dd/mm/yyyy")
txtCarna.Text = Format$(carna, "dd/mm/yyyy")
txtSexta.Text = Format$(sexta, "dd/mm/yyyy")
txtCorpus.Text = Format$(corpus, "dd/mm/yyyy")
End
Debian testing com pacotes Sid opcionais
FFmpeg - Como inserir Logo em vídeo
GeoVision - Redirecionamento de portas
Como conectar à Internet via GPRS (operadora Oi, modem ts9989i) usando o Ubuntu
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Ativando e usando "zoom" no ambiente Cinnamon
Vídeo Nostálgico de Instalação do Conectiva Linux 9
Como realizar um ataque de força bruta para desobrir senhas?
Thinkpads são bons mesmo ?! (3)
Eu queria adicionar a incon do wifi e deixa transparente no fluxbox no... (2)
Scripts ou binários [RESOLVIDO] (5)
Perfil criado no samba ad dc não loga no Windows 10 e 11 (12)









