Показать сообщение отдельно
  #3  
Старый 23.04.2008, 19:53
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,100
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ввести костанту (массив) для дней в месяце, а дальше обратным отсчетом.

Код:
type
 TDayInMonth = record
  month : месяц;
  days : integer;
 end;
const
 cDayInMonth : Array [1..12] Integer = (31, 29, 31, 30,...),
...
 
var
 n : Integer;
 m : Integer;
 ResDate : String;

n := k;
For I := 1 To 12 Do
begin
  m := I;
  If n <= cDayInMonth[i] Then break;
  n := n - cDayInMonth[i];
end;

ResDate :=IntToStr(n) + ' ' + месяцToStr(месяц(m-1));

Если что непонятно - пиши.
Ответить с цитированием