type
Date = class
private
Дата: System.DateTime;
public
день, месяц, год: integer;
constructor(d, m, y: integer);
begin
try
Дата := new System.DateTime(y, m, d);
(день, месяц, год) := (d, m, y);
except
Println('Недопустимая дата');
(день, месяц, год) := (1, 1, 0);
end
end;
procedure ДобавитьДни(dd: integer);
begin
Дата := Дата.AddDays(dd);
(день, месяц, год) := (Дата.Day, Дата.Month, Дата.Year)
end;
function ГодВисокосный: boolean;
begin
if год mod 400 = 0 then Result := True
else
if год mod 100 = 0 then Result := False
else Result := год mod 4 = 0
end;
end;
begin
var (d, m, y) := ReadInteger3('Введите день, месяц и год:');
var dd := new Date(d, m, y);
if dd.ГодВисокосный then Println('Год високосный')
else Println('Год не високосный');
dd.ДобавитьДни(5);
Print('Новая дата', $'{dd.Дата:dd.MM.}')
end.
ПримерВведите день, месяц и год: 9 11 2018Год не високосный Новая дата 14.11.2018
A = D*T*i
Где D – частота дискретизации (Гц), T – время звучания или записи звука, i - разрядность регистра (разрешение)
1 мин = 60 сек
A = 44100*60*8 = 21168000 бит ≈ 2,52 Мб (Мегабайт)
ответ: 2,52 Мегабайта