Advertisement
gabrielcampelo

ler_data__entrega_diasemana

Mar 25th, 2019
326
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.50 KB | None | 0 0
  1. #include<stdio.h>
  2.  
  3. int main (void){
  4.  
  5. int ano,dia,mes,i,m,c,diasemana;
  6. long long somadias;
  7.  
  8. printf("Digite uma data no formato (dd mm aaaa): ");
  9. scanf("%d %d %d",&dia,&mes,&ano);
  10. somadias=0;
  11. for (i=1900 ; i<ano ; i++){ //somar os dias dos meses, ano a ano até ano -1
  12.  
  13. for (m=1;m<mes ; m++){
  14. if((m==1)||(m==3)||(m==5)||(m==7)||(m==8)||(m==10)||(m==12))
  15. somadias+=31;
  16. if((m==4)||(m==6)||(m==9)||(m==11))
  17. somadias+=30;
  18. if ((m==2)&&((i%400==0)||(i%4==0)&&(i%100!=0)))
  19. somadias+=29;
  20. else
  21. somadias+=28;
  22. }
  23.  
  24. }
  25. m=1;
  26.  
  27. while ((i==ano)&&(m<mes)){ //quando chegar no ano, somar os meses até mes-1
  28. for (m=1;m<mes ; m++){
  29. if((m==1)||(m==3)||(m==5)||(m==7)||(m==8)||(m==10)||(m==12))
  30. somadias+=31;
  31. if((m==4)||(m==6)||(m==9)||(m==11))
  32. somadias+=30;
  33. if ((m==2)&&((i%400==0)||(i%4==0)&&(i%100!=0)))
  34. somadias+=29;
  35. else
  36. somadias+=28;
  37. }
  38. }
  39. somadias+=(dia-1);
  40. diasemana=1;
  41.  
  42.  
  43. for (c=1;c<=somadias ; c++){ //encontrar o dia da semana para o switch case
  44. diasemana++;
  45. if (diasemana==8)
  46. diasemana=1;
  47. }
  48.  
  49.  
  50.  
  51.  
  52.  
  53. switch(diasemana){
  54. case 1:
  55. printf("\nSegunda Feira, %d-%d-%d.",dia,mes,ano);
  56. break;
  57. case 2:
  58. printf("\nTerca Feira, %d-%d-%d.",dia,mes,ano);
  59. break;
  60. case 3:
  61. printf("\nQuarta Feira, %d-%d-%d.",dia,mes,ano);
  62. break;
  63. case 4:
  64. printf("\nQuinta Feira, %d-%d-%d.",dia,mes,ano);
  65. break;
  66. case 5:
  67. printf("\nSexta Feira, %d-%d-%d.",dia,mes,ano);
  68. break;
  69. case 6:
  70. printf("\nSabado , %d-%d-%d.",dia,mes,ano);
  71. break;
  72. case 7:
  73. printf("\nDomingo, %d-%d-%d.",dia,mes,ano);
  74. break;
  75.  
  76. }
  77.  
  78.  
  79. return 0;
  80. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement