Const
mu = 0.82;
g = 9.81;
var
a, h, delta, h0, d, fm, f0, f, k, t: double;
begin
Write('Сторона основания, а(м)=');Readln(a);
Write('Высота, h(м)=');Readln(h);
Write('Толщина стенок, delta(мм)=');Readln(delta);
delta := delta / 1000; { перевод в метры }
Write('Глубина погруэения, h0(м)=');Readln(h0);
Write('Диаметр люка, d(мм)=');Readln(d);
d := d / 1000; { перевод в метры }
fm := pi * sqr(d) / 4; f0 := sqr(a); f := sqr(a - 2 * delta);
k := sqrt(h0 - delta) - sqrt(h - delta - (h - h0) * f0 / f);
t := 2 * k / (mu * fm * sqrt(2 * g)) * f0 * f / (f0 - f);
Writeln('Время затопления ёмкости t(с)=', t)
end.
Тестовое решение:
Сторона основания, а(м)=3.52
Высота, h(м)=1.27
Толщина стенок, delta(мм)=150
Глубина погруэения, h0(м)=0.635
Диаметр люка, d(мм)=36
Время затопления ёмкости t(с)=3280.65395216006
В задании приводится ответ 3280.653625, разница начинается с восьмого знака. Поскольку текст программы, по которой выполнялось данное вычисление отсутствует, невозможно определить причину этого незначительного расхождения - применение арифметики иной точности, другая модификация Pascal.ABC, иное значение константы g и т.д.