Thema: Delphi Wochentagsberechnung

Einzelnen Beitrag anzeigen

Benutzerbild von negaH
negaH

Registriert seit: 25. Jun 2003
Ort: Thüringen
2.950 Beiträge
 
#6

Re: Wochentagsberechnung

  Alt 1. Okt 2006, 19:27
hast du mal das analysiert ?

Delphi-Quellcode:
function DayOfWeek(Date: TDateTime): Integer;
begin
  Result := Trunc(Date) mod 7 +1;
end;
Zitat:
Zum Beispiel die Funktion DayOfWeek arbeitet auch mit diesem Prinzip.
Ja das stimmt, nur das die RTL es viel effizienter macht, siehe meinen Source

Gruß Hagen

[edit]
mein Posting könnte sich eventuell ein bischen arrogant anhören, sorry dafür, ist natürlich nicht so gemeint.

Ein Schmunzeln kann ich mir aber denoch nicht vermeiden, denn wie man sieht kann man mit TDateTime viel effiezienter rechnen als man es vielleicht vermuten würde.

Der Trick ist ganz einfach: TDateTime im Vorkommapart enthält die Anzahl der Tage seit einem fixen Startdatum. Ein TDateTime = 0 ist demzufolge gleich diesem STartdatum. Das Startdatum wurde so gewählt das es ein 1.1. eines Jahres ist und dieser Tag zusätzlich nich ein Sonntag war.

Ergo: den Wochentag eines TDateTime zu berechen oder die Differenz zweier TDateTime in Tagen zu berechnen sind ganz normale mathematiche Operationen, simple Formeln die mit divisionen/subtraktionen auskommen.
[/edit]
  Mit Zitat antworten Zitat