Posts

Search

Stock span

Difference Between Two Time Periods
Write a program to calculate difference between two time periods
INPUT FORMAT:
Input 1 : hours,minutes and seconds
Input 2 : hours,minutes and seconds
OUTPUT FORMAT:
TIME DIFFERENCE
SAMPLE INPUT:
12 15 24 
8 15 23                                            
SAMPLE OUTPUT:                                                                        
4:0:1
CODE :-
#include <stdio.h>
struct TIME {
   int seconds;
   int minutes;
   int hours;
};

void differenceBetweenTimePeriod(struct TIME t1, struct TIME t2, struct TIME *diff);

int main() {
   struct TIME startTime, stopTime, diff;
   scanf("%d %d %d", &startTime.hours, &startTime.minutes, &startTime.seconds);
   scanf("%d %d %d", &stopTime.hours, &stopTime.minutes, &stopTime.seconds);
   differenceBetweenTimePeriod(startTime, stopTime, &diff);
   printf("%d:%d:%d\n", diff.hours, diff.minutes, diff.seconds);
   return 0;
}
void differenceBetweenTimePeriod(struct TIME start, struct TIME stop, struct TIME *diff) {
   while (stop.seconds > start.seconds) {
      --start.minutes;
      start.seconds += 60;
   }
   diff->seconds = start.seconds - stop.seconds;
   while (stop.minutes > start.minutes) {
      --start.hours;
      start.minutes += 60;
   }
   diff->minutes = start.minutes - stop.minutes;
   diff->hours = start.hours - stop.hours;
}