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 и т.д.