Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <iomanip>
- #include <stdexcept>
- #include <cmath>
- #include <vector>
- using namespace std;
- class Sat {
- int sati, minute, sekunde;
- public:
- void Postavi (int sati, int minute, int sekunde);
- void Sljedeci();
- void Prethodni();
- void PomjeriZa (int pomak);
- int DajSate() const {return sati; }
- int DajMinute() const {return minute;}
- int DajSekunde () const {return sekunde; }
- void Ispisi() const;
- friend int BrojSekundiIzmedju (const Sat &s1,const Sat &s2);
- };
- void Sat::Postavi (int sati, int minute, int sekunde)
- { if (sati<0 || minute<0 || sekunde<0 || sati>23 || minute>59 || sekunde>59)
- throw domain_error ("Neispravan unos.");
- Sat::sati=sati; Sat::minute=minute; Sat::sekunde=sekunde;
- }
- void Sat::Sljedeci () {
- PomjeriZa(1);
- }
- void Sat::Prethodni () {
- PomjeriZa(-1);
- }
- void Sat::PomjeriZa(int pomak) {
- sekunde+=pomak;
- int temp=sekunde+pomak;
- if (temp>59) {
- minute+=temp%60;
- sekunde=0;
- }
- if (minute>59) {
- sati+=minute%60;
- minute=0;
- }
- }
- void Sat::Ispisi() const {
- cout.fill('0');cout.width(2); cout<<sati<<":";
- cout.fill('0');cout.width(2);cout<<minute<<":";
- cout.fill('0');cout.width(2);cout<<sekunde<<":";
- }
- int BrojSekundiIzmedju (const Sat &s1,const Sat &s2) {
- return ((s1.sati*3600+s1.minute*60+s1.sekunde)-(s2.sati*3600+s2.minute*60+s2.sekunde));
- }
- int main () {
- Sat s1, s2;
- s1.Postavi(12,45,30);
- s2.Postavi(14,6,32);
- cout<<endl;
- cout<<s1.DajMinute()<<endl;
- cout<<s2.DajSekunde();
- s1.PomjeriZa(13);
- cout<<endl;
- s1.Ispisi();
- cout<<endl;
- int n=BrojSekundiIzmedju(s1,s2);
- cout<<n;
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement