#include using namespace std; struct Time { int hour; int minute; int second; }; void PrintTime(Time); Time SetTime(void); void CheckTime(Time *); int CalcSeconds(Time); Time AddTime(Time, Time); int main() { int secsA, secsB; Time ClockA, ClockB, ClockC; ClockA = SetTime(); ClockB = SetTime(); CheckTime(&ClockA); CheckTime(&ClockB); PrintTime(ClockA); PrintTime(ClockB); secsA = CalcSeconds(ClockA); secsB = CalcSeconds(ClockB); cout << "Sunolo deuteroleptwn Clock A : " << secsA << endl ; cout << "Sunolo deuteroleptwn Clock B : " << secsB << endl ; ClockC = AddTime(ClockA, ClockB); cout << "To athrisma tou ClockA (" ; PrintTime(ClockA); cout << ") k tou ClockB ("; PrintTime(ClockB); cout << ") einai : "; PrintTime(ClockC); cout << endl ; return 0; } Time AddTime(Time Clock1, Time Clock2){ int kratoumeno = 0; Time Clock; Clock.second = Clock1.second + Clock2.second ; if (Clock.second > 59){ Clock.second -= 60; kratoumeno=1; } Clock.minute = Clock1.minute + Clock2.minute + kratoumeno ; kratoumeno = 0; if (Clock.minute > 59){ Clock.minute -= 60; kratoumeno=1; } Clock.hour = Clock1.hour + Clock2.hour + kratoumeno ; if (Clock.hour > 23) Clock.hour -= 24; return Clock; } int CalcSeconds(Time biv){ return 3600*biv.hour+60*biv.minute+biv.second; } void CheckTime(Time *afa){ if ((*afa).hour > 23 || (*afa).hour < 0) (*afa).hour = 0; if ((*afa).minute > 59 || (*afa).minute < 0) (*afa).minute = 0; if ((*afa).second > 59 || (*afa).second < 0) (*afa).second = 0; } Time SetTime(){ Time r; cout << "Dwse thn wra : " ; cin >> r.hour ; cout << "Dwse ta lepta : " ; cin >> r.minute ; cout << "Dwse ta deuterolepta : " ; cin >> r.second ; return r; } void PrintTime(Time A){ if (A.hour < 10){ cout << "0"; } cout << A.hour << ":" ; if (A.minute < 10){ cout << "0"; } cout << A.minute << ":" ; if (A.second < 10){ cout << "0"; } cout << A.second << endl ; }