jordanov

Правилен датум

Nov 7th, 2019
361
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.22 KB | None | 0 0
  1. /*
  2. Да се креира програма која што за вчитан датум од стандарден влез (во формат DD MM GGGG) ќе испечати на стандарден излез порака DA или NEво зависност од тоа дали внесениот датум е правилен или не.
  3.  
  4. При одредување на валидноста на датумот во предвид да се земат сите фактори:
  5.  
  6.     дали месецот е број помеѓу 1 и 12
  7.     дали денот одговара со бројот на денови во тој месец
  8.     доколку е 29.02. да се внимава дали станува збор за престапна година
  9.     престапна година е секоја година која што е делива со 400 или пак е делива со 4, но не и со 100.
  10. */
  11.  
  12. #include<stdio.h>
  13.  
  14.  
  15.  
  16. int main() {
  17.    
  18.     int den, mesec, godina;
  19.    
  20.     scanf("%d %d %d", &den, &mesec, &godina);
  21.    
  22.     switch (mesec){
  23.         case 1: //januari
  24.             printf((den>=1&&den<=31) ? "DA" : "NE");
  25.             break;
  26.         case 2: //fevruari
  27.             if (den==29){
  28.                 if (godina%400==0 || (godina%4==0 && godina%100!=0))
  29.                     printf("DA");
  30.                 else
  31.                     printf("NE");
  32.             }
  33.             else if (den>=1 && den<=28){
  34.                 printf("DA");
  35.             }
  36.             else {
  37.                 printf("NE");
  38.             }
  39.             break;
  40.         case 3: //mart
  41.             printf((den>=1 && den<=31) ? "DA" : "NE");
  42.             break;
  43.         case 4: //april
  44.             printf((den>=1 && den<=30) ? "DA" : "NE");
  45.             break;
  46.         case 5: //maj
  47.             printf((den>=1 && den<=31) ? "DA" : "NE");
  48.             break;
  49.         case 6: //juni
  50.             printf((den>=1 && den<=30) ? "DA" : "NE");
  51.             break;
  52.         case 7: //juli
  53.             printf((den>=1 && den<=31) ? "DA" : "NE");
  54.             break;
  55.         case 8: // avgust
  56.             printf((den>=1 && den<=31) ? "DA" : "NE");
  57.             break;
  58.         case 9: // septemvri
  59.             printf((den>=1 && den<=30) ? "DA" : "NE");
  60.             break;
  61.         case 10: //oktomvri
  62.             printf((den>=1 && den<=31) ? "DA" : "NE");
  63.             break;
  64.         case 11: //noemvri
  65.             printf((den>=1 && den<=30) ? "DA" : "NE");
  66.             break;
  67.         case 12: //dekemvri
  68.             printf((den>=1 && den<=31) ? "DA" : "NE");
  69.             break;
  70.         default:
  71.             printf("NE");
  72.             break;
  73.        
  74.     }
  75.    
  76.    
  77.     return 0;
  78. }
Add Comment
Please, Sign In to add comment