Category: Math
Title: Calculate the age of a person
Date added: 15.03.2006
Hits: 11939
function CalculateAge(Birthday, CurrentDate: TDate): Integer;
var
Month, Day, Year, CurrentYear, CurrentMonth, CurrentDay: Word;
begin
DecodeDate(Birthday, Year, Month, Day);
DecodeDate(CurrentDate, CurrentYear, CurrentMonth, CurrentDay);
if (Year = CurrentYear) and (Month = CurrentMonth) and (Day = CurrentDay)
then
begin
Result := 0;
end
else
begin
Result := CurrentYear - Year;
if (Month > CurrentMonth)
then
Dec(Result)
else
begin
if Month = CurrentMonth
then
if (Day > CurrentDay)
then
Dec(Result);
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption := Format('Your age
is %d', [CalculateAge(StrToDate('01.03.1953'), Date)]);
end;