Einzelnen Beitrag anzeigen

Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#6

Re: Wochentagsbestimmung klassisch und plattformunabhängig

  Alt 8. Mär 2010, 14:47
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;
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat