Páscoa - Festas Móveis
Publicado por Khayla Elias dos Santos (última atualização em 09/06/2014)
[ Hits: 3.732 ]
Homepage: https://linktr.ee/khayla.elias
Calcula datas de feriados nacionais móveis baseados na Páscoa através do algoritmo de Jean Baptiste Joseph Delambre.
Exemplo de uso:
$ pascoa 2014
O parâmetro de entrada é opcional, caso se refira ao ano corrente.
#!/bin/bash # Calculo dos Feriados Nacionais baseados na Pascoa através do # Algoritmo de Jean Baptiste Joseph Delambre (1749 – 1822). # # Por: Alexandre Elias dos Santos (aleniac@yahoo.com.br) # confere parametro de entrada if [ $# != 0 ]; then if [ $1 -ge 1583 ]; then y=$1 else echo "Erro: Ano deve ser maior ou igual a 1583!" exit 1 fi else y=`date +%Y` fi #testa ano bissexto para calendario gregoriano function bissexto(){ local y=$1 if ([ $(($y % 4)) -eq 0 ] && [ $(($y % 100)) -ne 0 ]) || [ $(($y % 400)) -eq 0 ] then return 1 else return 0 fi } # bissexto – retorna 1 se ano for bissexto, caso contrario 0. # vetores para armazenar dia e mes dos feriados moveis (carnaval, paixao, pascoa, corpus) vdia=(0 0 0 0) vmes=(0 0 0 0) # vetor para saida do teste de ano bissexto bis=("nao" "sim") #calcula pascoa a=$(($y % 19)) b=$(($y / 100)) c=$(($y % 100)) d=$(($b / 4)) e=$(($b % 4)) f=$((($b + 8 ) / 25)) g=$((($b -$f + 1) / 3)) h=$(((19 * $a + $b - $d - $g + 15) % 30)) i=$(($c / 4)) k=$(($c % 4)) l=$(((32 + 2 * $e + 2 * $i - $h - $k) % 7)) m=$((($a + 11 * $h + 22 * $l) / 451)) p=$((($h + $l - 7 * $m + 114) / 31)) q=$((($h + $l - 7 * $m + 114) % 31)) q=$(($q + 1)) vdia[2]=$q vmes[2]=$p #verifica se ano e’ bissexto bissexto $y bi=$? # calcula Sexta da Paixao if [ $q -le 2 ]; then vdia[1]=$((29 + $q)) # dia vmes[1]=3 #mes else vdia[1]=$(($q - 2)) # dia vmes[1]=$p # mes fi # calcula terça de Carnaval if [ $p -eq 4 ]; then if [ $q -le 16 ]; then vdia[0]=$((12 + $bi + $q)) vmes[0]=2 else vdia[0]=$(($q - 16)) vmes[0]=3 fi else vdia[0]=$(($bi + $q - 19)) vmes[0]=2 fi # calcula quinta de Corpus vdia[3]=$(($q - 1)) if [ $p -eq 3 ]; then vmes[3]=5 else if [ $q -eq 1 ]; then vdia[3]=31 vmes[3]=5 else vmes[3]=6 fi fi # saidas echo "Datas das Festas Moveis em $y" echo "Algoritmo de Delambre (1749 - 1822)" echo echo -e "Ano Bissexto: \t${bis[$bi]}" echo -e "Carnaval: \t${vdia[0]}/${vmes[0]}" echo -e "Paixao: \t${vdia[1]}/${vmes[1]}" echo -e "Pascoa: \t${vdia[2]}/${vmes[2]}" echo -e "Corpus: \t${vdia[3]}/${vmes[3]}"
Squid: configure com opções avançadas
montagem de disquete e cd rom (usando dialog)
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Converter os repositórios Debian para o novo formato com as chaves
Instalando Spotify no Debian 13
Realizar overclock no Miyoo Mini (plus ou normal)
Monitoramento pfsense com zabbix (4)
Erro na inicialização do Debian como resolver (5)
Dúvidas sobre a originalidade de conteúdos online (11)
linux mint reconhece microfone de lapela como fone de ouvido sem micro... (4)