Thema: Delphi Jahre mit 53 Wochen

Einzelnen Beitrag anzeigen

Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#1

Jahre mit 53 Wochen

  Alt 19. Sep 2009, 17:27
Jahre mit 53 Wochen

Aktualisierte Fassung hier hier


gibt es immer dann, wenn der 1.1. oder der 31.12. des Jahres auf einen Donnerstag fallen.

Zur Verwendung habe ich 2 Routinen geschrieben, Is53Weeks1 und Is53Weeks2.
Die erste ist plattformunabhängig, die zweite benötigt Delphi.

Delphi-Quellcode:
implementation

{$R *.dfm}

//Wolfgang Mix - Delphi-Praxis
//ISO-Standard 8601
function Is53weeks1(y:word):boolean;
var date1,date2:TDate;
begin
  date1:=EncodeDate(y,1,1);
  date2:=EncodeDate(y,12,31);
  if (DayOfTheWeek(date1)=4) or (DayOfTheWeek(date2)=4) then
  result:=true else result:=false;
end;

//Wolfgang Mix - Delphi-Praxis
//ISO-Standard 8601
function Is53weeks2(y:word):boolean;
var date:TDate;
begin
  date:=EncodeDate(y,1,1);// must be
  If(WeeksInYear(date)=53) then result:=true else result:=false;
end;

procedure TForm1.Button1Click(Sender: TObject);
var year:integer;
begin
  Edit1.Text:=BoolToStr(Is53Weeks1(2009));
end;

end.
Gruß

Wolfgang
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat