Documentacao2
30 de setembro de 2014.
ÍNDICE
1 Programa 1: tp1_main1.c 3
1.1 Sumário 3
1.2 Algoritmo Construído 3
1.3 Testes 3
2 Programa 2: tp1_main2.c 4
2.1 Sumário 4
2.2 Algoritmo Construído 4
2.3 Testes 4
3 Programa 3: tp1_main3.c 5
3.1 Sumário 5
3.2 Algoritmo Construído 5
3.3 Testes 5
4 Programa 4: tp1_main4.c 6
4.1 Sumário 6
4.2 Algoritmo Construído 6
4.3 Testes 6
5 Programa 5: tp1_main5.c 7
5.1 Sumário 7
5.2 Algoritmo Construído 7
5.3 Testes 8
1 Programa 1: tp1_main1.c
1.1 Sumário
O programa foi construído para imprimir o dia da semana relativo a uma data digitada pelo usuário. Sendo que o ano deve ser maior ou igual a 1600. De acordo com os testes realizados o programa se mostra correto inclusive para dias que não existem como é o caso de anos que não são bissextos e o usuário digite o dia 29 de fevereiro, por exemplo.
1.2 Algoritmo Construído
O Algoritmo foi construído utilizando o calculo de dia Juliano. São utilizados os comandos:
Printf: impressão das mensagens no prompt de comando;
Scanf: Lê o que o usuário digitou e armazena em uma variável;
If: Analisa se os dados digitados pelo usuário estão dentro do padrão. Data maior que 1 e menor que 31, se o ano é maior ou igual a 1600.
If: Se o mês digitado for 2 e o dia maior que 28 o código analisa se o ano é bissexto. Caso o dia seja maior que 31 ou não exista o dia 29 nesse ano é exibida a mesma mensagem de erro que quando o ano é maior que 1600. Essa decisão foi tomada por não existir no #define uma mensagem especifica para este tipo de caso;
Switch: De acordo com o calculo de dia juliano o dia recebe um valor de 0 a 6 o cálculo é explicado no item 1.2.1. De acordo com o valor recebido ele imprime o dia relativo aquele case.
1.2.1 Calculo dia Juliano
Para calcular o dia juliano são usadas as seguintes considerações:
Para o mês de janeiro e fevereiro
Para os demais meses:
O valor obtido em ambos os casos é dividido por 7 e o resultado do resto fica entre 0 e 6. Começando de 0