• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

ibuh

Dias / Mês / Ano (Bisexto)

4 mensagens neste tópico

Boa tarde pessoal P@P.

Alguem me pode ajudar, explicando de que forma terei de programar o seguinte exercicio:

"Imprimir o Nº de dias de um mês introduzido pelo utilizador. Deverá ter em atenção aos anos bisextos".

O que eu gostaria é que me dissesem de que forma tenho de pensar para chegar à solução do exercicio.

Antecipadamente grato.

Ivo Andrade

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Depende do nível de correcção que é pretendido...

Muitas vezes, limitam-se a verificar se o ano é bissexto conforme este seja múltiplo de 4 ou não.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Se procurares pelo fórum, há pelo menos uma thread onde se discute o algoritmo do ano bissexto.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

/* exercicio: versao 0 */

/* #includes */
void input(void) { }
void calcula(void) { }
void output(void) { }
int main(void)
{
  /* variaveis locais */
  input();
  calcula();
  output();
  return 0;
}

Começas por uma versão muito básica, como por exemplo no código acima, e depois vais melhorando essa versão até fazer o que queres.

No teu caso específico, precisas de:

a) #include <stdio.h>

:P as variáveis locais à função main() são o mês e o ano

c) a função input() passa a aceitar o endereço das variáveis locais de mode a poder escrever nelas as escolhas do utilizador

d) a função calcula() passa a aceitar o ano e o mês e devolve o último dia

e) a função output() passa a aceitar o último dia (... oops ... também é preciso o último dia como variável local à função main() ... ) para o imprimir.

Depois da versão 1 estar a funcionar

f) validas os inputs (o que acontece se o utlizador pedir o último dia do mês 42 do ano 2008?)

g) outras melhorias

0

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