Нужно сделать в паскале. Даны два вещественных массива A(14), X(15). Вычислить:

0 голосов
35 просмотров

Нужно сделать в паскале. Даны два вещественных массива A(14), X(15). Вычислить:


image

Информатика (124 баллов) | 35 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

\displaystyle y=a_1\cdot a_2\cdot a_3\cdot ... \cdot a_{14}+\frac{x_1\cdot x_3\cdot x_5\cdot ... \cdot x_{15}}{1+(a_2\cdot a_5\cdot a_8\cdot ... \cdot a_{14})^2};\\\\y=\prod_{i=1}^{14}a_i+\frac{\displaystyle \prod_{i=1}^8x_{2i-1}}{1+\displaystyle\left( \prod_{i=1}^5a_{3i-1}\right)^2} =\prod_{i=0}^{13}a_i+\frac{\displaystyle\prod_{i=0}^7x_{2i}}{1+\displaystyle\left(\prod_{i=0}^4a_{3i+1}\right)^2}

PascalABC.NET 3.4.2, сборка 1884 от 24.11.2018

Внимание! Если программа не работает, обновите версию!

begin

 var a := SeqRandomReal(14, -99, 99)

     .Select(t -> Round(t, 1)).ToArray;

 a.Println;

 var x := SeqRandomReal(15, -99, 99)

     .Select(t -> Round(t, 1)).ToArray;

 x.Println;

 var (p1,p2,p3):=(1.0,1.0,1.0);

 for var i:=0 to 13 do

   p1*=a[i];

 for var i:=0 to 7 do

   p2*=x[2*i];

 for var i:=0 to 4 do

   p3*=a[3*i+1];

 var y:=p1+p2/(1+p3*p3);

 Println('y =',y)

end.

Пример

77.2 84.2 -5.9 89.4 93.3 -16.9 -25.7 26.9 -79.7 -3.4 55.3 46.9 -93.8 -28.9

42.6 63.9 97.4 46.5 -50.2 11.6 -21.1 52.1 -40.1 -90.6 74.1 -24.7 -22.3 -58 -3.3

y = -7.12046846792187E+21

(654k баллов)
0

Ох... там квадрат был....сейчас поправлю

0

Все, поправил