C++ Aufgabe Zeiten?

3 Antworten

total_time ist in Sekunden. In deinem Beispiel ist angegeben 1000 Sekunden.

Wenn man diese durch 60 Teilt, bekommt man die Minuten. Dann noch mal durch 60 bekommt man die Stunden. Oder wenn man direkt die Stunden haben möchte, (60*60 = 3600) teilt man durch 3600. in diesem Bsp mit 1000 Sekunden, hat man dann 0,2777 -> da aber zeit.hours ein integer ist, wird nur die 0 reingeschrieben.

dann kommen die minuten. hier nutzt man "%" oder Modulo. das wird genutzt um erst mal zu sehen, wie viele Stunden als "Rest" bleibt. also 1000 % 3600 liefert nur den Rest von 1000 Sekunden. 1000/60 = 16,6666 oder 16 Minuten.

Dann kommen die Sekunden

1000 Sekunden Modulo 3600 -> 1000 Sekunden

1000 Sekunden Modulo 60 -> 40 Sekunden

60 sekunden hat eine minute

60 minuten hat eine stunde

will ich von sekunde zu stunde muss ich also durch 60 teilen und dann nochmal durch 60 teilen oder anders

sekunden 
________
60 * 60

was gleichbedeuten ist mit

sekunden 
________
  3600

jetzt fragste dich was das mit dem modulo so auf sich hat .

module zeigt ja die abweichung von ganzen teilern

wenn du also weisst das sekunden / 3600 je ganze stunden sind und willst wissen was bei ganzen teilern abweicht dann machst du

sekunden % 3600

nehmen wir an du hast 3700 sekunden

3700 % 3600 = 100 

du weisst das 60 sekunden 1 minute ist , also

100 / 60 

somit weist du das wenn du die stunden schon gerechnet hast, nun 1.xx minuten übrig bleit oder abgerundet halt 1 minute.

Weil eine Stunde 60 Minuten hat.

Eine Minute hat 60 Sekunden.

Somit ist eine Stunde 60*60 = 3.600 Sekunden.