Advertisement
avukas

9.tut. z3

May 16th, 2014
248
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.64 KB | None | 0 0
  1. #include <iostream>
  2. #include <iomanip>
  3. #include <stdexcept>
  4.  
  5.  
  6. class digitalnisat
  7. {
  8.     int sati, minute, sekunde;
  9.  
  10. public:
  11.     void Postavi (int sati, int minute, int sekunde)
  12.     {
  13.         if (sati > 23 ||sati <= 0  || minute >59 || minute <=0 || sekunde > 59 || sekunde <0)  throw std::domain_error("Neispravni parametri..");
  14.         this -> sati = sati;
  15.         this -> minute = minute;
  16.         this -> sekunde = sekunde;
  17.     }
  18.  
  19.     void Sljedeci()
  20.     {
  21.         ++sekunde;
  22.         if (sekunde > 60)
  23.  
  24.            { sekunde = 1;
  25.         ++minute; }
  26.         if (minute > 59) minute = 0; ++sati;
  27.             if (sati > 23 ) sati = 0;
  28.  
  29.  
  30.  
  31.     }
  32.     void Prethodni()
  33.     {
  34.         --sekunde;
  35.         if (sekunde > 59) sekunde = 0;
  36.         ++minute;
  37.         if (minute < 59) minute = 59, sati = 1;
  38.         if (sati < 0) sati = 23;
  39.  
  40.  
  41.     }
  42.     void PomjeriZa(int pomak)
  43.     {
  44.  
  45.         sekunde = sekunde + pomak;
  46.         while
  47.          ( sekunde > 59 ) { sekunde -=60 ;
  48.         ++minute; }
  49.         while (minute > 59) {minute -= 60;
  50.         ++sekunde;}
  51.         while (sati > 23 ) sati -=24;
  52.  
  53.  
  54.  
  55.     }
  56.     int DajSate() const
  57.     {
  58.         return sati;
  59.     }
  60.     int DajMinute() const
  61.     {
  62.         return minute;
  63.     }
  64.     int DajSekunde() const
  65.  
  66.     {
  67.         return sekunde;
  68.     }
  69.     void Ispisi() const
  70.     {
  71.  
  72.         std::cout<<std::setfill('0') << std::setw(2) << sati<< ":" << minute << ":" << sekunde << " \n";
  73.  
  74.     } };
  75.  
  76.     int main()
  77.     {
  78.  
  79.     digitalnisat varijabla;
  80.     varijabla.Postavi(12,5,59);
  81.     varijabla.PomjeriZa(144);
  82.     varijabla.Ispisi();
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.         return 0;
  91.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement