// PascalABC.NET 3.1, сборка 1256 от 21.06.2016
uses System;
begin
var d:=DateTime.Parse('05.05.2005 17:05:05');
Writeln('Исходная дата: ',d);
d:=d.AddDays(500).AddHours(50).AddMinutes(50).AddSeconds(50);
Writeln('Полученная дата: ',d,' ',d.DayOfWeek);
end.
Результат
Исходная дата: 05.05.2005 17:05:05
Полученная дата: 19.09.2006 19:55:55 Tuesday