AA 2.3 - Comparações entre datas
Contexto
Verificações de consistência são importantes para os algoritmos. O objetivo é verificar se datas são válidas.
Informações
Para esta atividade, são consideradas datas válidas aquelas em que o número de dias está nos limites usuais, o que depende do mês em questão. Assim, são considerados as seguintes faixas de dias:
Mês
Intervalo
Janeiro
1 a 31
Fevereiro
1 a 28
Março
1 a 31
Abril
1 a 30
Maio
1 a 31
Junho
1 a 30
Julho
1 a 31
Agosto
1 a 31
Setembro
1 a 30
Outubro
1 a 31
Novembro
1 a 30
Dezembro
1 a 31
Anos bissextos não devem ser considerados, de forma que Fevereiro sempre será considerado com um máximo de 28 dias.
Os meses, que serão digitados na forma numérica, são válidos na faixa de 1 a 12.
Para os anos, será considerado que anos negativos simbolizem A.C, enquanto positivos sejam D.C. O único valor inválido para o ano é 0.
Especificação
Deve ser elaborado um algoritmo para ler duas datas, cada uma consistindo em dia, mês e ano, dados em formato numérico (e.g., 20, 3 e 2000 para 20/3/2000). Para cada data, deve ser informado se a data é válida ou não. A validade das datas deve ser feita conforme a verificação dos intervalos especificada acima.
Para esta codificação, não podem ser usados comandos condicionais. O resultado da verificação deverá ser feito usando-se uma variável lógica, a qual será escrita no final do algoritmo. Trabalhos que usarem o comando condicional não serão avaliados.
A versão em C do algoritmo também deve ser elaborada e entregue. Neste caso, as saídas serão 1 para verdadeiro e 0 para falso.