{ Visit: http://g-lts.info/ for more code! } # include using namespace std; class Time { private: int hour,minute,second; public: Time(int h,int m,int s); void print12(); void print24(); void nextSecond(); void prevSecond(); int toSeconds(); int countMidnight(); bool setHour(int h ); bool setMinute(int m); bool setSecond(int s); int getHour(); int getMinute(); int getSecond(); }; Time::Time(int h,int m,int s) { hour=h; minute=m; second=s; } /* Τέλος κατασκευαστή.*/ /* ================================================================== */ /* Μέθοδοι set : */ bool Time::setHour(int h ) { // Θέτει την ώρα ελέγχοντας την όμως. if ( h<0 || h>23 ) // Αν ΔΕΝ είναι στο διάστημα [0 - 23]. return false; hour=h; // Αν είναι στο σωστό διάστημα τότε το δεχόμαστε. return true; // :) } bool Time::setMinute(int m) { // Θέτει τα λεπτά ελέγχοντάς τα όμως. if ( m<0 || m>59 ) // Αν ΔΕΝ είναι στο διάστημα [0 - 59]. return false; minute=m; // Αν είναι στο σωστό διάστημα τότε το δεχόμαστε. return true; } bool Time::setSecond(int s) { // Θέτει τα δευτερόλεπτα ελέγχοντάς τα όμως. if ( s<0 || s>59 ) // Αν ΔΕΝ είναι στο διάστημα [0 - 59]. return false; second = s; // Αν είναι στο σωστό διάστημα τότε το δεχόμαστε. return true; } /* Τέλος των μεθόδων set . */ /* ================================================================== */ /* Μέθοδοι get : */ int Time::getHour() { return hour; } int Time::getMinute() { return minute; } int Time::getSecond() { return second; } /* Τέλος των μεθόδων get . */ /* ================================================================== */ int Time::toSeconds() { // Μετατρέπει την ώρα σε δευτερόλεπτα. int total=0; total=total+second; // Προσθέτουμε αρχικά τα δευτερόλεπτα στα "συνολικά δευτερόλεπτα". total = total + minute * 60; // Μετατρέπουμε τα λεπτά σε δευτερόλεπτα (minute * 60) και τα προσθέτουμε και αυτά στο σύνολο. total = total + hour * 3600; // Μετατρέπουμε τις ώρες σε λεπτά (hour * 3600) και τις προσθέτουμε στο σύνολο. return total; // Τέλος επιστρέφουμε τα συνολικά λεπτά. } int Time::countMidnight() {// Επιστρέφει τα δευτερόλεπτα που υπολείπονται μέχρι το πέρας της ημέρας. int count1=toSeconds(); // Μετατρέπουμε καταρχήν των τρέχουσα ώρα σε δευτερόλεπτα. int count2=24 * 3600; // Μετατρέπουμε την τελευταία ώρα της ημέρας σε δευτερόλεπτα. return count2-count1; // Αφαιρούμε από τα μεσάνυχτα την τρέχουσα ώρα και βλέπουμε - επιστρέφουμε τι απομένει. } void Time::print12() {// Επιστρέφει την ώρα σε 12ωρη μορφή. if ( hour > 12 ) // Αν είναι πάνω από 12 η ώρα, αφαιρούμε από την τρέχουσα ώρα 12. cout<