Ich muss von Millisekunden zu einem Tupel von (Stunden, Minuten, Sekunden, Millisekunden) gehen, die die gleiche Zeitmenge darstellen. ZB:Von Millisekunden zu Stunde, Minuten, Sekunden und Millisekunden
10799999ms = 2h 59m 59s 999ms
Der folgende Pseudo-Code ist das einzige, was ich tun konnte:
# The division operator below returns the result as a rounded down integer
function to_tuple(x):
h = x/(60*60*1000)
x = x - h*(60*60*1000)
m = x/(60*1000)
x = x - m*(60*1000)
s = x/1000
x = x - s*1000
return (h,m,s,x)
Ich bin sicher, dass es möglich sein muss, es zu tun smarter/eleganter/schneller/kompakter.
man konnte den Modulo-Operator (% in C verwenden und Freunde) um die Berechnungen von x etwas zu vereinfachen (zB x = x% (60 * 60 * 1000)) – fvu
Stellen Sie sicher, dass Sie diese Funktionalität nicht bereits in der von Ihnen verwendeten Standardbibliothek der Sprache haben. –