Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

nadiacaixinha

calendário

Mensagens Recomendadas

nadiacaixinha    0
nadiacaixinha

olá boa noite, tenho um trabalho para fazer em phyton se ouver alguém que me possa ajudar.

Calendário

Construa um programa para gerar um calendário para um ano escolhido pelo utilizador, gerando dois resultados:

1. Textual: escrevendo um ficheiro calendario2011.

txt, onde 2011 é substituído pelo ano inserido

pelo utilizador. Deve enumerar algumas datas importantes, nomeadamente:

1. O primeiro e o último dia do ano

2. Primeiro dia do horário de Verão (último Domingo de Março)

3. Primeiro dia do horário de Inverno (último Domingo de Outubro)

4. Páscoa, calculada com o algoritmo indicado em http://pt.wikipedia.org/wiki/Cálculo_da_Páscoa

5. Carnaval (47 dias antes do Domingo de Páscoa)

Para cada uma destas datas deve escrever uma linha com o formato “data, dia da semana: descrição”:

01 de Janeiro, Sábado: Primeiro dia do Ano 2011

08 de Março, Terça: Carnaval

27 de Março, Domingo: Primeiro dia do horário de Verão

24 de Abril, Domingo: Páscoa

30 de Outubro, Domingo: Primeiro dia do horário de Inverno

31 de Dezembro, Sábado: Último dia de 2011

2. Gráfico: exibindo

uma janela como

ilustrado pela

imagem, com

destaques coloridos

em datas importantes

e feriados.

Para saber em que dia da

semana o ano começa, pode

fazer o cálculo desde uma data

conhecida. Um ano comum

tem 365 dias. Isto equivale a

52 semanas completas e mais

um dia. Por exemplo 2011

inicia num Sábado. Passados

365 dias, completam-se as 52

semanas e o último dia é um

Sábado. O início de 2012

corresponde a um ano comum

depois de um início ao Sábado.

Logo 2012 começa num

Domingo.

Os anos bissextos têm 366 dias

(um dia a mais em Fevereiro).

Se existirem anos bissextos

entre a data conhecida e o ano

que pretendemos, é necessário

considerar mais um dia na

semana. Por exemplo, para o

início de 2013 face à data

conhecida 01/01/2011,

consideramos um ano comum

e um ano bissexto: Sábado

mais 1 dia, ficamos com

Domingo; depois Domingo

mais 2 dias... e concluímos que

2013 inicia numa Terça-feira.

Não pode usar funções auxiliares do módulo time.

Implemente uma função especificamente para testar se um ano é bissexto:

(ano módulo 4 é 0 e (ano módulo 400 é 0 ou ano módulo 100 diferente_de 0))

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
djthyrax    11
djthyrax

Começa por estruturar o programa, dividir em pequenas tarefas e começa a escrever código. Quando tiveres dúvidas em concreto, tens este tópico para as postares.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita a nossa Política de Privacidade