Если вы хотите создать программу, которая будет считать возраст человека по его дате рождения, то нужно использовать функцию.
Чтобы понять как всё работает давайте создадим VCL форму Delphi и установим на ней два компонента DateTimePicker (DateTimePicker1 и DateTimePicker2), кнопку BitBtn1 и строку Label1.
Сначала пользователь должен указать в DateTimePicker1 дату рождения человека. После этого в DateTimePicker2 он должен установить текущую дату (если нужно рассчитать возраст на сегодняшний день), или любую другую дату (если нужно узнать сколько было лет человеку по состоянию на определённое число).
При нажатии на кнопку BitBtn1 должна вызываться функция, которая выполнит определение возраста и выведет результат в Label1.
Расчёт возраста в Delphi. Пример кода
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 TAgeForm.FormShow(Sender: TObject);
begin
DateTimePicker1.Date := Date; // устанавливаем текущую дату при отображении формы
DateTimePicker2.Date := Date; // устанавливаем текущую дату при отображении формы
end;
procedure TAgeForm.BitBtn1Click(Sender: TObject);
begin
Label1.Caption := Format('Ваш возраст %d', [CalculateAge(DateTimePicker1.Date, DateTimePicker2.Date)]) + ' год/лет'; // выводим в Label возраст
end; 