{ Visit: http://g-lts.info/ for more code! } package time; //import persons.Person; class Time { private int hour,minute, second; /* Κατασκευαστής.*/ public Time(int h, int m, int s) { hour = h ; minute = m ; second = s; } /* Τέλος κατασκευαστή.*/ /* ================================================================== */ /* Μέθοδοι set : */ public boolean setHour(int h ) { // Θέτει την ώρα ελέγχοντας την όμως. if ( h < 0 || h > 23 ) // Αν ΔΕΝ είναι στο διάστημα [0 - 23]. return false; hour = h; // Αν είναι στο σωστό διάστημα τότε το δεχόμαστε. return true; // :) } public boolean setMinute(int m) { // Θέτει τα λεπτά ελέγχοντάς τα όμως. if ( m < 0 || m > 59 ) // Αν ΔΕΝ είναι στο διάστημα [0 - 59]. return false; minute = m; // Αν είναι στο σωστό διάστημα τότε το δεχόμαστε. return true; } public boolean setSecond(int s) { // Θέτει τα δευτερόλεπτα ελέγχοντάς τα όμως. if ( s < 0 || s > 59 ) // Αν ΔΕΝ είναι στο διάστημα [0 - 59]. return false; second = s; // Αν είναι στο σωστό διάστημα τότε το δεχόμαστε. return true; } /* Τέλος των μεθόδων set . */ /* ================================================================== */ /* Μέθοδοι get : */ public int getHour() { return hour; } public int getMinute() { return minute; } public int getSecond() { return second; } /* Τέλος των μεθόδων get . */ /* ================================================================== */ public int toSeconds() { // Μετατρέπει την ώρα σε δευτερόλεπτα. int total = 0; total = total + second; // Προσθέτουμε αρχικά τα δευτερόλεπτα στα "συνολικά δευτερόλεπτα". total = total + minute * 60; // Μετατρέπουμε τα λεπτά σε δευτερόλεπτα (minute * 60) και τα προσθέτουμε και αυτά στο σύνολο. total = total + hour * 3600; // Μετατρέπουμε τις ώρες σε λεπτά (hour * 3600) και τις προσθέτουμε στο σύνολο. return total; // Τέλος επιστρέφουμε τα συνολικά λεπτά. } public int countMidnight() {// Επιστρέφει τα δευτερόλεπτα που υπολείπονται μέχρι το πέρας της ημέρας. int count1 = toSeconds(); // Μετατρέπουμε καταρχήν των τρέχουσα ώρα σε δευτερόλεπτα. int count2 = 24 * 3600; // Μετατρέπουμε την τελευταία ώρα της ημέρας σε δευτερόλεπτα. return count2-count1; // Αφαιρούμε από τα μεσάνυχτα την τρέχουσα ώρα και βλέπουμε - επιστρέφουμε τι απομένει. } public void print12() {// Επιστρέφει την ώρα σε 12ωρη μορφή. if ( hour > 12 ) // Αν είναι πάνω από 12 η ώρα, αφαιρούμε από την τρέχουσα ώρα 12. System.out.println( hour-12 + ":" + minute + ":" + second + " μ.μ" ); else // Διαφορετικά οκ όλα είναι μια χαρά. ;) System.out.println( hour + ":" + minute + ":" + second + " π.μ" ); } public void print24() { // Απλώς εμφανίζει την ώρα. System.out.println( hour + ":" + minute + ":" + second ); } public void prevSecond() { // Πάμε την τρέχουσα ώρα 1 δευτερόλεπτο πίσω. --second; // Αφαιρούμαι απλά 1 δευτερόλεπτο. if ( second == -1 ) // Αν ήταν στο 0 όμως και πάει στο -1 ( δε το θέλουμε αυτό ) : { second = 59; // Έτσι ορίζουμε τα δευτερόλεπτα να έχουν τιμή 59 και όχι -1. --minute; // Όμως έτσι εννοείται πως πάμε και ένα λεπτό πίσω. ;) if ( minute == -1 ) // Αν τα λεπτά ήταν στο 0 όμως και πάει στο -1 ( δε το θέλουμε αυτό ) : { minute = 59; // Έτσι ορίζουμε τα λεπτά να έχουν τιμή 59 και όχι -1. hour--; // & έτσι εννοείται όμως πως πάμε και μια ώρα πίσω. ;) if ( hour == -1 ) // Αν όμως και η ώρα ήταν στο 0 και πάει στο -1, τότε : { hour = 23; // ορίζουμε πως η ώρα θα είναι 23 . } } } } public void nextSecond() { // Πάμε 1 δευτερόλεπτο μπροστά. ++second; // Προσθέτουμε απλώς 1 δευτερόλεπτο στην ιδιότητα του αντικειμένου μας. if ( second == 60 ) // Αν τα δευτερόλεπτα όμως γίνουν 60 ( δε το θέλουμε αυτό ) : { minute++; // Αυτό σημαίνει πως πάμε τελικά 1 λεπτό εμπρός ( χάρης του ενός δευτερολέπτου ) second = 0; // και τα δευτερόλεπτα εννοείται μηδενίζονται. if ( minute == 60 ) // Αν τα λεπτά όμως γίνουν 60 ( δε το θέλουμε αυτό ) : { hour++; // Τότε τελικά πάμε μια ώρα εμπρός minute = 0; // και τα λεπτά μηδενίζονται. if ( hour == 24 ) // Τέλος αν η ώρα γίνει 24 ( πράγμα το οποίο δε το θέλουμε ) { hour = 0; // Η ώρα μηδενίζει. :) } } } } } /* ************************************* Main ************************************* */ public class Main { public static void main (String[] args) { Time t1 = new Time(23,59,59); /* Δημιουργία του αντικειμένου t1 τύπου Time. */ Time t2 = new Time(22,59,59); /* Δημιουργία του αντικειμένου t2 τύπου Time. */ // Δημιουργούμε το αντικείμενο t1 και θέτουμε απευθείας την ώρα. // Δημιουργούμε το αντικείμενο t2 και θέτουμε απευθείας την ώρα. t1.print12(); // Εμφανίζουμε την ώρα σε 12ωρη μορφή. t2.print24(); // Εμφανίζουμε την ώρα σε 24ωρη μορφή. System.out.println("Η ώρα άλλαξε. "); t2.nextSecond(); // Πάμε 1 sec μπροστά. t2.print24();// Εμφανίζουμε την ώρα σε 24ωρη μορφή. System.out.println("Προς τα κάτω. "); t2.prevSecond(); // Αφαιρούμε 1 sec από την τρέχω ώρα του t2. t2.print24(); // Εμφανίζουμε την ώρα σε 24ωρη μορφή. System.out.println( "Η t1 απέχει από τα μεσάνυχτα : " + t1.countMidnight() ); System.out.println( "Η t2 απέχει από τα μεσάνυχτα : " + t2.countMidnight() ); } } { Visit: http://g-lts.info/ for more code! }