Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include <conio.h>
- #define TRUE 1;
- int N, anoM;
- int ano, mes, dia;
- int ainicial=1900;
- int sem=1, segunda, terça, quarta, quinta, sexta, sabado, domingo;
- int diaMax;
- char c;
- int main()
- {
- while("TRUE")
- {
- printf("\nIntroduza um Numero entre 0 e 400: ");
- fflush(stdin); // Limpeza de Buffers
- scanf("%d", &N); // Input do Numero de anos
- if(N>400 || N<0)
- printf("\n\tERRO\n\n"); // Validação de N entre 0 e 400
- else
- {
- anoM = N - 1 + ainicial; // Cálculo do Ano
- for(;ainicial<=anoM;ainicial++) // Ciclo Ano
- {
- for(mes=1;mes<=12;mes++) // ciclo Mes
- {
- if(mes == 4 || mes == 6 || mes == 9 || mes == 11) // Meses 30
- diaMax = 30;
- if(mes == 1 || mes == 3 || mes == 5 || mes == 7 || mes == 8 || mes == 10 || mes == 12) // Meses 31
- diaMax = 31;
- if(mes == 2) // Mes Fevereiro
- {
- if( ainicial % 4 == 0 && ( ainicial % 100 != 0 || ainicial % 400 == 0 ) ) // Ano Bissexto, 29 dias
- diaMax = 29;
- else
- diaMax = 28; // Ano Não-Bissexto, 28 dias
- }
- for(dia=1;dia<=diaMax;dia++) // Ciclo do Dia
- {
- if(dia == 13) // Se o dia for 13 fica junto com o dia de semana correspondente
- {
- switch(sem)
- {
- case 1: segunda++;break;
- case 2: terça++;break;
- case 3: quarta++;break;
- case 4: quinta++;break;
- case 5: sexta++;break;
- case 6: sabado++;break;
- case 7: domingo++;break;
- }
- }
- sem++; // Cálculo do dia de semana
- if(sem == 8) // Se dia da semana for 8, volta a 1 (segunda feira)
- sem=1;
- }
- }
- }
- printf("Sabados: %d \n Domingo: %d \n Segundas: %d \n Tercas: %d \n Quartas: %d \n Quintas: %d \n Sextas: %d \n \n\n\n", sabado, domingo,segunda, terça, quarta, quinta, sexta);
- }
- printf("\n\t Repetir? y/n ");
- c= _getch();
- if(c != 'Y' || c != 'y')
- break;
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment