Division einer Zeit
-
Hallo, brauche dringend Eure Hilfe!
Ich habe folgenden Code:
CTime t1(int..., int...); CTime t2(int..., int...); CTimeSpan ts = t2-t1;
Da ich einen Durchschnittswert brauche, müßte ich ts durch einen int
dividieren. Das geht so natürlich nicht. Weiß jemand Rat?????Danke!!
-
Wenn Du z.B. die Sekunden willst, kannst Du mit GetTotalSeconds die Sekunden von ts ermitteln. Diese sind dann teilbar:
ts.GetTotalSeconds() / zahl;
Apropos, falsche Rubrik: Deine Anfrage gehört nach MFC.
-
Danke, das funktioniert schon mal prima!
Aber wie wandle ich die Sekunden wieder in Tage, Stunden, Minuten
und Sekunden um ? Gibt es da eine bestimmte Funktion und wie ist
sie zu benutzen? Wenn nicht, wie mach ich das "zu Fuß" ?????
-
Ist doch ganz einfach... Du weisst doch wieviele Sekunden beispielsweise ein Tag hat (24*60*60). Teile deine Sekunden durch die Anzahl Sekunden pro Tag und du erhälst die Anzahl der Tage. Den Rest bei dieser Division erhälts du durch den Modulo-Operator
Der Code könnte also wie folgt aussehen...
// Sekunden in Zeit umrechnen int totalseconds = 98665; // Ersetzen durch Anzahl der Sekunden int days, hous, minutes, seconds; int remaining = 0; days = totalseconds / (24*60*60); remaining = totalseconds % (24*60*60); hours = remaining / (60*60); remaining = remaining % (60*60); minutes = remaining / (60); remaining = remaining % (60); seconds = remaining;
Ich hoffe das hilft dir...