profile
Опубликовано 6 лет назад по предмету Информатика от arinnaigorevna

Напишите программу, размещающую в памяти два вектора и вычисляющую их скалярное произведение.

  1. Ответ
    Ответ дан Аккаунт удален
    { Free Pascal - fpc 2.6.4 }
    var
      i,n:integer;
      A,B:array of integer;
      p:longint;
    begin
      Write('Число элементов в векторах='); Read(n);
      Randomize;
      SetLength(A,n);
      Writeln('Вектор A');
      for i:=0 to n-1 do begin A[i]:=Random(51)-25; Write(A[i],' ') end;
      Writeln;
      SetLength(B,n);
      p:=0;
      Writeln('Вектор B');
      for i:=0 to n-1 do begin
        B[i]:=Random(51)-25;
        Write(B[i],' ');
        p:=p+A[i]*B[i]
        end;
      Writeln;
      Writeln('Скалярное произведение равно ',p);
    end.

    Тестовое решение:
    Число элементов в векторах=15
    Вектор A
    -16 -6 -1 6 -6 7 22 4 16 19 3 -21 19 22 7
    Вектор B
    21 21 -2 -8 -3 25 -4 20 6 -11 8 10 -16 -16 19
    Скалярное произведение равно -1145
Самые новые вопросы