Zitat von
Daniel G:
Und warum schlägst dus dann nicht für die CL vor, wenn du denkst, dass das da fehlt? :gruebel:
Weil mein Geschreibsel weder
OOP, noch schnell, noch effizent ist. Immer nur als abschreckendes Beispiel dienen ist auch nicht schön.
Gruß
K-H
edit:
Delphi-Quellcode:
function Wochentag(dt:tdatetime):integer; { Zellers Kongruenz}
var
jahr,
monat,
tag : word;
jahrh : word;
d1,
d2,
d3,
d4 : integer;
begin
decodedate(dt,jahr,monat,tag);
case monat of
1,2 : begin
monat:=monat+12;
jahr:=jahr-1;
end;
end;
jahrh:=(jahr div 100)*100;
d1:=(((monat+1)*26) div 10);
d2:=(jahr mod 100)+((jahr mod 100) div 4);
d3:=((jahrh div 4)-(2*jahrh));
d4:=d1+d2+d3+tag ;
if d4<0 then
result:=(d4 mod 7)+7
else
result:=d4 mod 7;
end;