Cálculo do dia da Páscoa

Publicado por Luis Eduardo Boiko Ferreira (última atualização em 03/03/2010)

[ Hits: 8.288 ]

Homepage: https://www.facebook.com/luiseduardo.boiko

Download pascoa.py




Programa para calcular o dia da páscoa baseado no algoritmo exposto por Jean Meeus em 1991. Eu poderia ter enxugado o código, eliminando alguns IFs de alguns meses... portanto, somente comentários construtivos serão bem vindos, não perca tempo me dizendo coisas já sabidas.

  



Esconder código-fonte

#coding: utf-8
#você pode modificar o codigo e distribuir a vontade, desde quee
#nao retire o nome do Autor
#Autor: Luis Eduardo Boiko Ferreira
#e-mail: [email protected]
import time
import datetime 
print ' _______________________________________'
print '|                                       |'
print '|                                       |'
print '|       Algoritmo para calcular         |'
print '|          o dia da Pascoa              |'
print '|          Desenvolvido por             |'
print '|      Luis Eduardo Boiko Ferreira      |'
print '|_______________________________________|'
anoatual = datetime.date.today().year 
print 'O ano atual é %s.' %anoatual
ano=input('Digite o ano desejado para calcularmos o dia da páscoa:')
a=ano%19
b=int(ano/100)
c=ano%100
d=int(b/4)
e=b%4
f=int((b+8)/25)
g=int((b-f+1)/3)
h=((19*a+b-d-g+15)%30)
i=int(c/4)
k=c%4
L=((32+2*e+2*i-h-k)%7)
m=int(a+11*h+22*L)/451
mes=int((h+L-7*m+114)/31)
if mes==1 : mes='Janeiro'
elif mes==2 : mes='Fevereiro'
elif mes==3 : mes='Março'
elif mes==4 : mes='Abril'
elif mes==5 : mes='Maio'
elif mes==6 : mes='Junho'
elif mes==7 : mes='Julho'
elif mes ==8 : mes ='Agosto'
elif mes ==9 : mes ='Setembro'
elif mes ==10 : mes ='Outubro'
elif mes ==11 : mes ='Novembro'
else : mes ='Dezembro'
mes1=mes
dia=((h+L-7*m+114)%31)+1
if anoatual>ano :
  print "A pascoa caiu no dia: %s."% dia 
  print "Do mês: %s" %mes1

else :
   print "A pascoa ira cair no dia: %s."% dia 
   print "Do mês: %s" %mes1

Scripts recomendados

Exercício com números randômicos - randint

Advinha v0.0.1

Listas no Terminal

Criador de instalador USB Linux bootável com Python

Calculadora para números complexos


  

Comentários
[1] Comentário enviado por lestatwa em 03/03/2010 - 18:38h

Façam o download do script que esta com a diagramação correta...

[2] Comentário enviado por andregondim em 03/03/2010 - 21:15h

Olá,

Duas sugestões, na tabulação use 4 espaços como indicado em python e no pedido do ano dê espaço depois do :

ano=input('Digite o ano desejado para calcularmos o dia da páscoa: ')

e

if anoatual>ano :
****print "A pascoa caiu no dia: %s."% dia
****print "Do mês: %s" %mes1

else :
****print "A pascoa ira cair no dia: %s."% dia
****print "Do mês: %s" %mes1

Abraços,
André Gondim
http://andregondim.eti.br

[3] Comentário enviado por lestatwa em 03/03/2010 - 23:01h

Muito obrigado pelas dicas!
Ainda tenho alguns vícios do C
eheh
mas isso ae, compartilhando conhecimento !
Abraços

[4] Comentário enviado por andrezc em 04/03/2010 - 21:54h

gostei, python é uma ótima linguagem.


Contribuir com comentário