Registriert seit: 17. Nov 2005
Ort: Hamburg
1.063 Beiträge
Delphi XE2 Professional
|
AW: Den letzten Donnerstag eines Monats
26. Dez 2017, 12:59
Naja, wenn es um Schnelligkeit geht dann so:
Delphi-Quellcode:
// WeekDay 0=Mo, 6=So
FUNCTION LastWeekDayOfMonth(Year,Month,WeekDay:Integer):TDateTime;
const DIM:Array[1..12] of byte=(31,28,31,30,31,30,31,31,30,31,30,31);
Wie sieht es mit Schaltjahren aus? Diese werden nicht berücksichtigt - oder übersehe ich etwas?
Ja, da übersiehst du etwas.
1) Hier
Day:=DIM[Month]+Ord((Month=2) and ((Year mod 4=0) and (Year mod 100<>0) or (Year mod 400=0)));
2) Und hier
Inc(DN,Year div 4 - Year div 100 + Year div 400);
Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi....
|
|
Zitat
|