• Помогите, пожалуйста, нужно написать текст программу в Паскаль

    Вычисление скалярного произведения
    1)s=(Aq-Bp,r) - условие


    Исходные данные:

    A= 1 2 3
    1 2 1
    3 2 0

    B= 4 1 2
    0 4 3
    1 1 1

    P= 0.1
    1.7
    -1.5

    q= -1.6
    0.8
    1.1

    r= -0.7
    1.3
    0.2

    question img

Ответы 1

  • // PascalABC.NET 3.2, сборка 1338 от 16.11.2016type  matrix=array[1..3,1..3] of real;  vector=array[1..3] of real;  procedure MatPrint(a:matrix);begin  for var i:=1 to 3 do begin    for var j:=1 to 3 do Write(a[i,j]:6:2);    Writeln    endend;procedure VecPrint(a:vector);begin  for var i:=1 to 3 do Write(a[i]:6:2);  Writelnend;procedure MV(a:matrix; v:vector; var t:vector);// Умножение матрицы на векторbegin  for var i:=1 to 3 do begin    var s:=0.0;    for var j:=1 to 3 do    s+=a[i,j]*v[j];    t[i]:=s    end;end;procedure VS(a,b:vector; var t:vector);// Вычитание векторовbegin  for var i:=1 to 3 do t[i]:=a[i]-b[i]end;function SP(a,b:vector):real;// Скалярное произведение векторовbegin  Result:=0.0;  for var i:=1 to 3 do Result+=a[i]*b[i]end;  begin  var A:matrix:=((1,2,3),(1,2,1),(3,2,0));  var B:matrix:=((3,1,2),(0,4,3),(1,1,1));  var p:vector:=(0.1,1.7,-1.5);  var q:vector:=(-1.6,0.8,1.1);  var r:vector:=(-0.7,1.3,0.2);  Writeln('Матрица А'); MatPrint(A);  Writeln('Матрица B'); MatPrint(B);  Writeln('Вектор p'); VecPrint(p);  Writeln('Вектор q'); VecPrint(q);  Writeln('Вектор r'); VecPrint(r);  var t1,t2,t3:vector;  MV(A,q,t1);  MV(B,p,t2);  VS(t1,t2,t3);  Writeln('Скалярное произведение равно ',SP(t3,r))end.РезультатыМатрица А  1.00  2.00  3.00  1.00  2.00  1.00  3.00  2.00  0.00Матрица B  3.00  1.00  2.00  0.00  4.00  3.00  1.00  1.00  1.00Вектор p  0.10  1.70 -1.50Вектор q -1.60  0.80  1.10Вектор r -0.70  1.30  0.20Скалярное произведение равно -5.27
    • Автор:

      gracejasx
    • 5 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years