MC102 - Lab01
Cálculo da Páscoa

A Páscoa é uma das festas móveis de várias religiões. Sua data varia a cada ano e, no mesmo ano, de religião para religião. Por decreto do Concílio de Nicéia (ano 325), o dia da Páscoa deve ser celebrado no primeiro Domingo depois da lua cheia que segue o equinócio de outono (21 de março). Todas as demais festas móveis do ano eclesiástico são estabelecidas a partir da fixação da data da Páscoa.

O seguinte algoritmo, do astrônomo Aloysius Lilius e do matemático Christopher Clavius, é usado para o cálculo da Páscoa de qualquer ano após 1582 até o final do século XXI. Existem muitas indicações de que o cálculo da Páscoa foi a única aplicação importante da aritmética na Europa durante a Idade Média, razão pela qual este algoritmo tem um significado histórico.

Definições:

Algoritmo:
Seja Y o ano do qual se deseja a data da Páscoa.
(Cálculo do número áureo G:)
Seja G o resto da divisão inteira de Y por 19 acrescido de uma unidade.
(século:)
Seja C o quociente da divisão inteira de Y por 100 acrescido de 1.
(correções:)
Seja X o quociente da divisão de 3*C por 4, menos 12 e Z o quociente da divisão de 8*C+5 por 25, menos 5. (Z é uma correção especial para sincronizar a Páscoa com a órbita da lua).
(epacta:)
Seja E o resto da divisão inteira de (11*G+20+Z-X) por 30.
Se E=25 e G>11 ou se E=24 então some 1 a E (E é chamada Epacta e indica quando a lua cheia ocorre).
(Cálculo da lua cheia:)
Seja N=44-E. Se N<21 então faça N receber N+30.
(Cálculo do Domingo:)
Seja D o quociente da divisão inteira de 5*Y por 4, menos (X+10). Faça N receber N+7 menos o resto da divisão de (D+N) por 7.
(Cálculo do mês:)
Se N>31 a Páscoa será no dia (N-31) de abril, caso contrário será em N de março.

Faça um programa em C para calcular a data da Páscoa de um ano fornecido pelo usuário.
Exemplo de Entrada: 2006
Exemplo de Saída: 16/04/2006


AVISO: Esta página não é uma publicação oficial da UNICAMP. A responsabilidade por seu conteúdo é exclusivamente do autor.
DISCLAIMER: This is a personal page, and not an official UNICAMP page. Its contents are of entire responsibility of Paulo Miranda.