Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <string>
- #include <stdexcept>
- class Sat
- {
- int sati, minute, sekunde;
- public:
- void Postavi(int sati, int minute, int sekunde);
- void Sljedeci() { PomjeriZa(1); }
- void Prethodni() { PomjeriZa(-1); }
- void PomjeriZa(int pomak);
- int DajSate() const { return sati; }
- int DajMinute() const { return minute; }
- int DajSekunde() const { return sekunde; }
- void Ispisi() const;
- };
- void Sat::Ispisi() const
- {
- if (sati < 10)
- std::cout << '0';
- std::cout << sati << ":";
- if (minute < 10)
- std::cout << '0';
- std::cout << minute << ":";
- if (sekunde < 10)
- std::cout << '0';
- std::cout << sekunde;
- }
- void Sat::Postavi(int sati, int minute, int sekunde)
- {
- if (sati < 0 || sati > 23 || minute < 0 || minute > 59 || sekunde < 0 || sekunde > 59) throw std::domain_error("Vrijeme nije validno!");
- Sat::sati = sati; Sat::minute = minute; Sat::sekunde = sekunde;
- }
- void Sat::PomjeriZa(int pomak)
- {
- sati += pomak / 3600; minute += (pomak / 60) % 60; sekunde += pomak % 60;
- if (sekunde > 59)
- {
- minute++;
- sekunde -= 60;
- }
- if (minute > 59)
- {
- sati++;
- minute -= 60;
- }
- if (sati > 23)
- sati -= 24;
- if (sekunde < 0)
- {
- minute--;
- sekunde += 60;
- }
- if (minute < 0)
- {
- sati--;
- minute += 60;
- }
- if (sati < 0)
- sati += 24;
- }
- int main()
- {
- system("PAUSE");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement