Цитата:
Сообщение от Раджаб bro
Думаю что основная моя тупость заключается здесь.
|
Не тупость. Просто лень и полное нежелание учиться.
Прежде, чем браться за написание программы, соблаговолите постичь азы матричной алгебры, в частности, разобраться, что такое произведение матриц, как умножать вектор на матрицу и т.д.
Вот, для начала ознакомьтесь.
А программа может выглядеть, например, так:
Код:
Type
Vect=array[1..3] of real;
Matr=Array[1..3,1..3] of real;
Const
x:Vect=(-2.2,5,1);
y:Vect=(-1,0,2);
a:Matr=((1.3,5,1),(2,3.2,1),(6,7,8));
Function Prod(PV:Vect;PM:Matr):Vect;
var
j,k:Byte;
M:Vect;
begin
for j:=1 to 3 do M[j]:=0;
for j:=1 to 3 do
for k:=1 to 3 do
M[j]:=M[j]+PV[k]*PM[k,j];
Prod:=M;
end;
Function Sums(V1,V2:Vect):Vect;
var
i:Byte;
begin
for i:=1 to 3 do Sums[i]:=V1[i]+V2[i];
end;
Var
q:Byte;
R:Vect;
Begin
R:=Sums(Prod(x,a),Prod(y,a));
for q:=1 to 3 do write(R[q]:0:3,' ');
Readln
End.