Поделитесь своими знаниями, ответьте на вопрос:
Не могу решить( задан фрагмент программы. определите, какие значения примут переменные в результате её выполнения x=4, y=2 y = x / 2 if y > 0 then z = 2*(x + y) elseif x > 5 then z = 10 * y else z = x * y ^ 2 end if p = (x + y + z)
const {убраны лишние описатели - чистая косметика}
a = 2.12;
b = 7.45;
h = 0.34;
var
x, f1, f2, y, s: real;
i, n: integer; {описание, необходимое для цикла}
begin
{ x := a; этот оператор не нужен }
s := 0;
n := Trunc((b - a) / h)+1; {стандартная формула числа повторений цикла }
for i := 1 to n do { Заголовок цикла }
begin {начало блока для выполнения в цикле }
x := a + (i - 1) * h; { перенесено из конца цикла }
f1 := 3 * ln(exp(1 / 5) * ln(sin(x) + sqr(x)));
f2 := ((2 * x + 1) / (x * x * x * x * x));
y := f1 / f2;
s := s + y;
end; {конец блока для выполнения в цикле }
Writeln('S=', s:10:5);
end.
Тестовое решение:
S=26390.53751