Sanady

Untitled

Mar 7th, 2018
292
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.82 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. void Mesiac(int M)
  5. {
  6.     char MenoMesiaca[12][12] = {
  7.     {"Januar"},
  8.     {"Februar"},
  9.     {"Marec"},
  10.     {"April"},
  11.     {"Maj"},
  12.     {"Jun"},
  13.     {"Jul"},
  14.     {"August"},
  15.     {"September"},
  16.     {"Oktober"},
  17.     {"November"},
  18.     {"December"}};
  19.     printf("\n\n\n%s:", MenoMesiaca[M - 1]);
  20. }
  21.  
  22. int PriestupnyRok(int y)
  23. {  
  24.     if((y % 4) == 0)
  25.     {
  26.         if((y % 100) == 0)
  27.         {
  28.             if((y % 400) == 0)
  29.             {
  30.                 return 1;
  31.             }
  32.             else
  33.             {
  34.                 return 0;
  35.             }  
  36.         }
  37.         else
  38.         {
  39.             return 1;  
  40.         }
  41.         return 1;  
  42.     }
  43.     else
  44.     {
  45.         return 0;
  46.     }
  47.    
  48. }
  49.  
  50. int PocetDniMesiaca(int M, int Y)
  51. {
  52.     if(M < 1 || M > 12) return printf("Zle ste zadali mesiac");
  53.     int Dni[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
  54.     if(PriestupnyRok(Y) == 1)
  55.     {
  56.         Dni[1] = 29;
  57.         return Dni[M - 1];
  58.     }
  59.     else
  60.     {
  61.         return Dni[M - 1];
  62.     }
  63. }
  64.  
  65. int PrvyDen(int M, int Y)
  66. {
  67.     int a, year, month, d;
  68.     a = ((14 - M) / 12);
  69.     year = Y - a;
  70.     month = (M + (12 * a) - 2);
  71.     d = (5 + 1 + year + (year / 4) + ((31 * month) / 12)) % 7;
  72.     return d;
  73. }
  74.  
  75. void GrafickeZnazornenie(int M, int Y)
  76. {
  77.     int i;
  78.     Mesiac(M);
  79.     printf("\nPon  Uto  Sre  Stv  Pia  Sob  Ned\n");
  80.     printf("=================================\n");
  81.     for (i = 1; i <= 1 + PrvyDen(M, Y) * 5; i++)
  82.     {
  83.         printf(" ");
  84.     }
  85.     for (i = 1; i <= PocetDniMesiaca(M, Y); i++)
  86.     {
  87.         printf("%2d", i);
  88.         if ((i + PrvyDen(M, Y)) % 7 > 0)
  89.         {
  90.             printf("   ");
  91.         }
  92.         else
  93.         {
  94.             printf("\n ");
  95.         }
  96.     }
  97.  
  98. }
  99.  
  100.  
  101. int pocetDniMedzi(int d1, int m1, int y1, int d2, int m2, int y2)
  102. {
  103.  
  104.    
  105.     return 0;
  106. }
  107.  
  108. void Menu(int option)
  109. {
  110.     int Month, Year;
  111.     switch(option)
  112.     {
  113.         case 1:
  114.         {
  115.             printf("Zadajte mesiac:");
  116.             scanf("%d", &Month);
  117.             printf("Zadajte rok:");
  118.             scanf("%d", &Year);
  119.            
  120.             if((Month < 1 || Month > 12) && Year < 0)
  121.             {
  122.                 printf("Zadali ste zly rok alebo zly mesiac, skontrolujte si opet vase vstupy.\n");
  123.                
  124.                 printf("Zadajte mesiac:");
  125.                 scanf("%d", &Month);
  126.                 printf("Zadajte rok:");
  127.                 scanf("%d", &Year);
  128.             }
  129.             else
  130.             {
  131.                 GrafickeZnazornenie(Month, Year);  
  132.             }
  133.             Month, Year = 0;
  134.             break;         
  135.         }
  136.         case 2:
  137.         {
  138.             int i;
  139.             printf("Zadajte rok:");
  140.             scanf("%d", &Year);
  141.            
  142.             for(i = 1; i <= 12; i++)
  143.             {
  144.                 GrafickeZnazornenie(i, Year);
  145.             }
  146.             Month, Year = 0;
  147.             break;
  148.         }
  149.         case 3:
  150.         {
  151.             break;
  152.         }
  153.         case 4:
  154.         {
  155.             exit(0);
  156.             break;
  157.         }
  158.         default:
  159.         {
  160.             printf("Zadali ste nepravnu moznost do menu!");
  161.             break;
  162.         }
  163.     }
  164. }
  165.  
  166. int main()
  167. {
  168.     int op = 0;
  169.     printf("Menu:\n\
  170.             1) Zobrazenie kalendara pre zadany mesiac vo zvolenom roku. \n\
  171.             2) Zobrazenie kalendara pre zadany rok. \n\
  172.             3) Zistenie poctu dni medzi 2 zvolenymi datumamy \n\
  173.             4) Ukoncenie programu\n\n\
  174.             Zadajte si nieco z menu:");
  175.     scanf("%d", &op);
  176.     Menu(op);
  177.    
  178.    
  179.     return 0;
  180. }
Advertisement
Add Comment
Please, Sign In to add comment