Advertisement
Guest User

Untitled

a guest
Mar 28th, 2017
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 4.32 KB | None | 0 0
  1. // cwiczenia.cpp : Defines the entry point for the console application.
  2. //
  3.  
  4. #include "stdafx.h"
  5. #include <iostream>
  6. #include <string>
  7. #include "conio.h"
  8. #include <list>
  9. using namespace std;
  10.  
  11. void dzientygodnia(int dzienmod)
  12. {
  13.  
  14.     switch (dzienmod)                                               // WYZNACZANIE DNIA TYGODNIA
  15.     {
  16.     case 1:
  17.         cout << "Czwartek" << endl;
  18.  
  19.         break;
  20.     case 2:
  21.         cout << "Piątek" << endl;
  22.  
  23.         break;
  24.     case 3:
  25.         cout << "Sobota" << endl;
  26.  
  27.         break;
  28.     case 4:
  29.         cout << "Niedziela" << endl;
  30.  
  31.         break;
  32.     case 5:
  33.         cout << "Poniedziałek" << endl;
  34.  
  35.         break;
  36.     case 6:
  37.         cout << "Wtorek" << endl;
  38.  
  39.         break;
  40.     case 0:
  41.         cout << "Środa" << endl;
  42.         break;
  43.     }
  44. }
  45. int przystepnosc(int rok)
  46. {
  47.     if ((rok % 4 == 0) && (rok % 100 != 0) || (rok % 400 == 0))
  48.     {
  49.         return 1;
  50.     }
  51.     else
  52.         return 0;
  53.    
  54. }
  55. int liczbadniwmiesiacu(int miesiac, int rok) {
  56.     int m;
  57.     if (miesiac == 1 || miesiac == 3 || miesiac == 5 || miesiac == 7 || miesiac == 8 || miesiac == 10 || miesiac == 12)
  58.         m = 31;
  59.     else if (miesiac == 2)
  60.         if (przystepnosc(rok) == 1)
  61.  
  62.             m = 29;
  63.         else
  64.             m = 28;
  65.        
  66.     else if (miesiac == 4 || miesiac == 6 || miesiac == 9 || miesiac == 11)
  67.         m = 30;
  68.     return m;
  69. }
  70. int kalendarz (int y, int g)
  71. {
  72.     for (int i = 1; i < y; i++)
  73.     {
  74.         cout << "   ";
  75.     }
  76.     for (int i = 1; i <= g; i++)
  77.     {
  78.         printf("%3d", i);
  79.         if ((i + y - 1) % 7 == 0)
  80.             cout << endl;
  81.     }
  82.     return 0;
  83. }
  84. int data ()
  85. {
  86.     int data;
  87.     cin >> data;
  88.     return data;
  89. }
  90. int firstday (int miesiacmod)
  91. {
  92.     int y;
  93.     switch (miesiacmod)                                             // WYZNACZANIE PIERWSZEGO DNIA miesiaca
  94.     {
  95.     case 1:
  96.         y = 4;
  97.         break;
  98.     case 2:
  99.         y = 5;
  100.         break;
  101.     case 3:
  102.         y = 6;
  103.         break;
  104.     case 4:
  105.         y = 7;
  106.         break;
  107.     case 5:
  108.         y = 1;
  109.         break;
  110.     case 6:
  111.         y = 2;
  112.         break;
  113.     case 0:
  114.         y = 3;
  115.         break;
  116.     }
  117.     return y;
  118. }
  119.  
  120. int _tmain(int argc, _TCHAR* argv[])
  121. {
  122.     int dzien, miesiac, rok;
  123.     int m1 = 31; //1 3 5 7 8 10 12 meisiace
  124.     int m2 = 30; //4 6 9 11 miesiace
  125.     int m3;
  126.     int wszystkiedni = 0;
  127.  
  128.     cout << "Podaj dzien" << endl;
  129.     dzien = data();
  130.     cout << "Podaj miesiac" << endl;
  131.     miesiac = data();
  132.     cout << "Podaj rok" << endl;
  133.     rok = data();
  134.     cout << endl;
  135.    
  136.     if (rok < 1970)
  137.     {
  138.         cout << "nieprawidłowa data" << endl;
  139.     }
  140.  
  141.  
  142.  
  143.     for (int i = 1970; i < rok; i++)
  144.     {
  145.    
  146.         if (przystepnosc(i) == 1)
  147.         {
  148.             m3 = 29;
  149.         }
  150.         else
  151.         {
  152.             m3 = 28;
  153.         }
  154.         wszystkiedni = m1 + m3 + m1 + m2 + m1 + m2 + m1 + m1 + m2 + m1 + m2 + m1 + wszystkiedni;
  155.     }
  156.    
  157.  
  158.  
  159.  
  160.  
  161.  
  162.     if (przystepnosc(rok) == 1)  //zmiana dni lutego do wyliczenia dnia w aktualnym miesiacu
  163.     {
  164.         m3 = 29;
  165.     }
  166.     else
  167.     {
  168.         m3 = 28;
  169.     };
  170.  
  171.     if (miesiac == 1) {
  172.         wszystkiedni = wszystkiedni + dzien;
  173.     };
  174.  
  175.     if (miesiac == 2) {
  176.         wszystkiedni = m1 + wszystkiedni + dzien;
  177.     };
  178.  
  179.     if (miesiac == 3) {
  180.         wszystkiedni = m1 + m3 + wszystkiedni + dzien;
  181.     };
  182.     if (miesiac == 4) {
  183.         wszystkiedni = m1 + m3 + m1 + wszystkiedni + dzien;
  184.     };
  185.     if (miesiac == 5) {
  186.         wszystkiedni = m1 + m3 + m1 + m2 + wszystkiedni + dzien;
  187.     };
  188.     if (miesiac == 6) {
  189.         wszystkiedni = m1 + m3 + m1 + m2 + m1 + wszystkiedni + dzien;
  190.     };
  191.     if (miesiac == 7) {
  192.         wszystkiedni = m1 + m3 + m1 + m2 + m1 + m2 + wszystkiedni + dzien;
  193.     };
  194.     if (miesiac == 8) {
  195.         wszystkiedni = m1 + m3 + m1 + m2 + m1 + m2 + m1 + wszystkiedni + dzien;
  196.     };
  197.     if (miesiac == 9) {
  198.         wszystkiedni = m1 + m3 + m1 + m2 + m1 + m2 + m1 + m1 + wszystkiedni + dzien;
  199.     };
  200.     if (miesiac == 10) {
  201.         wszystkiedni = m1 + m3 + m1 + m2 + m1 + m2 + m1 + m1 + m2 + wszystkiedni + dzien;
  202.     };
  203.     if (miesiac == 11) {
  204.         wszystkiedni = m1 + m3 + m1 + m2 + m1 + m2 + m1 + m1 + m2 + m1 + wszystkiedni + dzien;
  205.     };
  206.     if (miesiac == 12) {
  207.         wszystkiedni = m1 + m3 + m1 + m2 + m1 + m2 + m1 + m1 + m2 + m1 + m2 + wszystkiedni + dzien;
  208.     };
  209.  
  210.     int dzienmod;
  211.     dzienmod = wszystkiedni % 7;
  212.  
  213.  
  214.     cout << "Dzien " << rok << "-" << miesiac << "-" << dzien << " to ";
  215.     dzientygodnia(dzienmod);
  216.  
  217.  
  218.    
  219.     int y;
  220.     int miesiacmod = (wszystkiedni - dzien + 1) % 7;
  221.     y= firstday(miesiacmod);
  222.  
  223.     int g;
  224.         g = liczbadniwmiesiacu(miesiac, rok);
  225.     cout << "Kalendarz na miesiac " << rok << "." << miesiac << endl;
  226.  
  227.     cout << " Pn Wt Sr Czw Pt Sb Nd" << endl;
  228.  
  229.     kalendarz(y, g);
  230.    
  231.         cout << endl << endl;
  232.  
  233.         if (przystepnosc(rok) == 1)
  234.         {
  235.             cout << "Rok jest przestepny" << endl;
  236.         }
  237.         else
  238.         {
  239.             cout << "Rok nie jest przestepny" << endl;
  240.         };
  241.  
  242.         system("PAUSE");
  243.         return 0;
  244.         }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement