Piktogramm
Admiral
- Registriert
- Okt. 2008
- Beiträge
- 8.858
Das erstemal 12Uhr war es nach 43.200s und die 12. Stunde des Tages war es 3.600s lang bei einer Tageslänge von 86.400s.
Entsprechend:
( Zeitwert - 43.200 ) % 86.400s = x
Wobei x <= 3600 / 86400 geprüft werden müsste um herauszubekommen, ob die Zeit im Bereich 12:00:00 - 12:59:59 liegt.
Probleme die auftreten sind, dass wenn du wirklich alles in Unixtime überführst Schaltsekunden beachten musst. Deswegen klappt diese einfache Lösung auch nicht mit der Unixtime der aktuellen Zeit. An der Stelle lohnt aber sicher ein Blick in die Doku der time.h oder du baust dir eine eigene Lösung die nach dem Prinzip der Unixtime funktioniert aber Schaltsekunden ignoriert (ich gehe davon aus, dass deine Datensätze keine Schaltsekunden gesondert aufzeigen), oder du suchst etwas im Netz, da das Problem sicher schon Andere vor dir hatten.
Weiterhin unschön ist bei diesem fixem Hack, dass x ein Float sein müsste, anstatt das man die ganze Zeit nur schön mit Integern rechnet. Das ist dann eine Optimierungsaufgabe das ganze derart elegant zu gestalten, dass nur Integer herausfallen.
Edit: BOAR Leute, ihr seid zu schnell
Entsprechend:
( Zeitwert - 43.200 ) % 86.400s = x
Wobei x <= 3600 / 86400 geprüft werden müsste um herauszubekommen, ob die Zeit im Bereich 12:00:00 - 12:59:59 liegt.
Probleme die auftreten sind, dass wenn du wirklich alles in Unixtime überführst Schaltsekunden beachten musst. Deswegen klappt diese einfache Lösung auch nicht mit der Unixtime der aktuellen Zeit. An der Stelle lohnt aber sicher ein Blick in die Doku der time.h oder du baust dir eine eigene Lösung die nach dem Prinzip der Unixtime funktioniert aber Schaltsekunden ignoriert (ich gehe davon aus, dass deine Datensätze keine Schaltsekunden gesondert aufzeigen), oder du suchst etwas im Netz, da das Problem sicher schon Andere vor dir hatten.
Weiterhin unschön ist bei diesem fixem Hack, dass x ein Float sein müsste, anstatt das man die ganze Zeit nur schön mit Integern rechnet. Das ist dann eine Optimierungsaufgabe das ganze derart elegant zu gestalten, dass nur Integer herausfallen.
Edit: BOAR Leute, ihr seid zu schnell