struct myTime { myTime() : ms(0), sec(0), min(0), hour(0) { } int ms; int sec; int min; int hour; }; void displayTime(const myTime& time) { std::cout << time.hour << ":" << time.min << ":" << time.sec << ":" << time.ms << std::endl; } int timeToMs(const myTime& time) { return time.ms + (time.sec * 1000) + (time.min * 1000 * 60) + (time.hour * 1000 * 60 * 60); } myTime msToMyTime(int time) { myTime mytime; mytime.hour = time / (1000 * 60 * 60); time %= (1000 * 60 * 60); mytime.min = time / (1000 * 60); time %= (1000 * 60); mytime.sec = time / 1000; time %= 1000; mytime.ms = time; return mytime; } myTime computeDiff(const myTime& timeBegin, const myTime& timeEnd) { int realTimeBegin = timeToMs(timeBegin); int realTimeEnd = timeToMs(timeEnd); std::cout << realTimeEnd << std::endl; std::cout << realTimeBegin << std::endl; if (realTimeBegin > realTimeEnd) return msToMyTime(realTimeBegin - realTimeEnd); return msToMyTime(realTimeEnd - realTimeBegin); } int main() { myTime time1; myTime time2; myTime result; std::cout << "Entrez les seconde et centieme de depart separe d'un espace: " << std::endl; std::cin >> time1.sec >> time1.ms; std::cout << "Entrez les seconde et centieme d'arrive separe d'un espace : " << std::endl; std::cin >> time2.sec >> time2.ms; result = computeDiff(time1, time2); displayTime(time1); displayTime(time2); displayTime(result); return 0; }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question