www.mikrocontroller.net

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


Autor: Nils (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: olykar (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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#Gregoriani...
http://de.wikipedia.org/wiki/Gregorianischer_Kalen...

Autor: Andrew Taylor (marsufant)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da Du nix über die Progrmamiersprache sagst, nehmen wir ein unix-OS

Manpage von date-Kommando aufrufen und lesen.

Frage beantwortet.

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht 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)

Autor: Matthias Larisch (matze88)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Scaliger (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Scaliger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Tage werden hierbei fortlaufend nummeriert. Heute haben wir übrigens 
den Tag 54875.

Autor: Bensch (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: eProfi (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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);

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.