Forum: Mikrocontroller und Digitale Elektronik Umrechnung von Datum in Anzahl Tage seit dem 01.01. eines Jahres


von Nils (Gast)


Lesenswert?

Moin,

leider habe ich hier nichts richtiges Gefunden. Vielleicht kann mir ja 
jemand helfen. Ich habe ein Datum in dem Format xx.xx.xxxx. Jetzt muss 
ich aber für meine Anwendung das Datum Umrechnen in die Anzahl Tage seit 
dem 01.01. des jeweiligen Jahres. Als Beispiel ist die Anzahl der Tage 
für 31.03. in diesem jahr 90. In einem Schaltjahr jedoch 91. Wie kann 
ich jetzt einfach das Datum in die anzahl Tage umrechnen?

Grüße
Nils

von olykar (Gast)


Lesenswert?

In welcher Programmiersprache wird das Programm geschrieben? Manche 
Entwicklungstools w.z.B. C# haben schon eingebaute Funktionen 
(Eigenschaften) dafür: DateTime.Now.DayOfYear
mfG

von peter (Gast)


Lesenswert?

Wir sind hier unter "Mikrocontroller und Elektronik", da wird er Wohl
oder Übel 'von Hand rechnen' dürfen.
http://de.wikipedia.org/wiki/Schaltjahr#Gregorianischer_Kalender
http://de.wikipedia.org/wiki/Gregorianischer_Kalender#Charakteristika

von Andrew T. (marsufant)


Lesenswert?

Da Du nix über die Progrmamiersprache sagst, nehmen wir ein unix-OS

Manpage von date-Kommando aufrufen und lesen.

Frage beantwortet.

von Karl H. (kbuchegg)


Lesenswert?

Nils wrote:
> dem 01.01. des jeweiligen Jahres. Als Beispiel ist die Anzahl der Tage
> für 31.03. in diesem jahr 90. In einem Schaltjahr jedoch 91. Wie kann
> ich jetzt einfach das Datum in die anzahl Tage umrechnen?

Wie hast du es denn gemacht, als du auf die 90 bzw. 91 gekommen bist?
Genauso kannst du es auch in deinem Programm machen.

(Wenn ich mal davon ausgehe, dass du die Anzahl nicht einfach irgendwo 
abgeschrieben hast)

von Matthias L. (matze88)


Lesenswert?

Das einzige was wir beachten müssen, ist das Schaltjahr.
Wie war das? Alle 4 Jahre, außer die durch 100 teilbaren Jahre aber doch 
die durch 400 teilbaren.

von Scaliger (Gast)


Lesenswert?

Mach es doch mit dem Modifizierten Julianianischen Datum: MJD (unter 
Modified Julian Date gurgeln). Jeder Astronom und auch die ETSI benutzt 
es (z.B. als Serviceinformation beim digitalen Fernsehen).

http://en.wikipedia.org/wiki/Julian_day

von Scaliger (Gast)


Lesenswert?

Die Tage werden hierbei fortlaufend nummeriert. Heute haben wir übrigens 
den Tag 54875.

von Bensch (Gast)


Lesenswert?

Mach doch einfach ne Tabelle, in der die Anzahl der Tage der vergangenen 
Monate aufgelistet sind, addiere den aktuellen Tag dazu.

Im Schaltjahr dann noch evtl. +1 und fertig ist die Kiste.

von eProfi (Gast)


Lesenswert?

"Moin, leider habe ich hier nichts richtiges Gefunden."

Auch das Suchen ist eine Kunst für sich:

Beitrag "TI58 TI-58 TI59 TI-59 solid state software modul Programm 20"

nimm die Funktion    long dt2(t,m,j);
abstand = dt2(tag,monat,jahr) - dt2(1,1,jahr);

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.