#include <iostream>
#include<iomanip>
using namespace std;

class SpeedDistanceTime{
	
	private:
		double startHours;
		double startMinutes;
		double endHours;
		double endMinutes;
		double timeTaken;
		double distance;
		double speed;
		double calcTimeTaken(){
			double minute;
			double hour;
			if(endMinutes<startMinutes){
				endMinutes+=60;
				endHours-=1;
				minute=endMinutes-startMinutes;
				hour=endHours-startHours;
			}
			else{
			minute=endMinutes-startMinutes;
			hour=endHours-startHours;
			}

			timeTaken=(minute/60)+hour;
		
		return timeTaken;
	
		}
		double calcDistance(){
			distance= speed*timeTaken;	
			return distance;
		}
	public:
		SpeedDistanceTime(double t=0,double d=0){
			timeTaken=t;
			distance=d;}
			
		double operator + (const SpeedDistanceTime &p){
			return distance+p.distance ;}
			
		friend ostream &operator<<(ostream &output,const SpeedDistanceTime &s){
			cout<<"      Time taken"<<"="<<fixed<<setprecision(2)<<s.timeTaken<<endl;
			cout<<"      Speed"<<"="<<s.speed<<endl;
			cout<<"      Distance"<<"="<<s.distance<<endl;
		return output;}
		
		friend void readInput(SpeedDistanceTime &sdt){
		char ch;
			cout<<"      Start time = ";
			cin>>sdt.startHours;
			cin>>ch;
			cin>>sdt.startMinutes;
			
			cout<<"      End time = ";
			cin>>sdt.endHours;
			cin>>ch;
			cin>>sdt.endMinutes;
			
			cout<<"\nEnter speed in km/h = ";
			cin>>sdt.speed; 
			
			sdt.calcTimeTaken();
			sdt.calcDistance(); 
		}
};

int main(){
	
	SpeedDistanceTime obj1,obj2;
	
	cout<<"\nInput for Object 1"<<endl;
	cout<<"Enter start time and end time using 24-hour time format (hh:mm)"<<endl;
	
	readInput(obj1);
	
	cout<<"\nInput for Object 2"<<endl;
	cout<<"Enter start time and end time using 24-hour time format (hh:mm)"<<endl;

	readInput(obj2);
	
	cout<<"\n**OUTPUT"<<endl;
	cout<<"Object 1:"<<endl; 
	cout<<obj1<<endl;
	cout<<"Object 1:"<<endl; 
	cout<<obj2<<endl;
	
	cout<<"Total distance for Object 1 and 2 ="<<obj1+obj2<<" km";
	
	return 0;
	
		
}
