Найти значение: min(P1, P2), гдеP1 скалярное творение векторов A и
Отыскать значение: min(P1, P2), где
P1 скалярное творение векторов A и B.
P2 скалярное творение векторов C и D.
Вычисление скалярного творения векторов оформить подпрограммой.
Начальные данные: А=(-5.1, 2.7, 3.4, 6.2); В=(1.2, 3.4, 0, 2.5);
С=(2.7, 3.4, 2.5, 6.3, 7.8); D=(1.7, -1.3, 2.8, 0, 7.2);
Влад Велданов
Вы пренебрегали указать язык и систему программирования.
1 ответ
Vugin Roman
Тогда будет Паскаль...
const
nm = 5;
type
V = array[1..nm] of real;
function SP(var a, b: V; n: integer): real;
var
i: integer;
s: real;
begin
s := 0;
for i := 1 to n do s := s + a[i] * b[i];
SP := s
end;
var
A, B, C, D: V;
P1, P2, min: real;
i, n: integer;
begin
Write('Введите размерность вектора A: '); Readln(n);
Write('Введите координаты вектора A через пробел: ');
for i := 1 to n do Read(A[i]);
Write('Введите координаты вектора B через пробел: ');
for i := 1 to n do Read(B[i]);
P1 := SP(A, B, n);
Write('Введите размерность вектора C: '); Readln(n);
Write('Введите координаты вектора C через пробел: ');
for i := 1 to n do Read(C[i]);
Write('Введите координаты вектора D через пробел: ');
for i := 1 to n do Read(D[i]);
P2 := SP(C, D, n);
if P1 gt; P2 then min := P2 else min := P1;
Writeln('Наименьшее из скалярных творений (A*B),(C*D) равно ', min);
end.
Результаты выполнения:
Введите размерность вектора A: 4
Введите координаты вектора A через пробел: -5.1 2.7 3.4 6.2
Введите координаты вектора B через пробел: 1.2 3.4 0 2.5
Введите размерность вектора C: 5
Введите координаты вектора C через пробел: 2.7 3.4 2.5 6.3 7.8
Введите координаты вектора D через пробел: 1.7 -1.3 2.8 0 7.2
Наименьшее из скалярных творений (A*B),(C*D) одинаково 18.56
const
nm = 5;
type
V = array[1..nm] of real;
function SP(var a, b: V; n: integer): real;
var
i: integer;
s: real;
begin
s := 0;
for i := 1 to n do s := s + a[i] * b[i];
SP := s
end;
var
A, B, C, D: V;
P1, P2, min: real;
i, n: integer;
begin
Write('Введите размерность вектора A: '); Readln(n);
Write('Введите координаты вектора A через пробел: ');
for i := 1 to n do Read(A[i]);
Write('Введите координаты вектора B через пробел: ');
for i := 1 to n do Read(B[i]);
P1 := SP(A, B, n);
Write('Введите размерность вектора C: '); Readln(n);
Write('Введите координаты вектора C через пробел: ');
for i := 1 to n do Read(C[i]);
Write('Введите координаты вектора D через пробел: ');
for i := 1 to n do Read(D[i]);
P2 := SP(C, D, n);
if P1 gt; P2 then min := P2 else min := P1;
Writeln('Наименьшее из скалярных творений (A*B),(C*D) равно ', min);
end.
Результаты выполнения:
Введите размерность вектора A: 4
Введите координаты вектора A через пробел: -5.1 2.7 3.4 6.2
Введите координаты вектора B через пробел: 1.2 3.4 0 2.5
Введите размерность вектора C: 5
Введите координаты вектора C через пробел: 2.7 3.4 2.5 6.3 7.8
Введите координаты вектора D через пробел: 1.7 -1.3 2.8 0 7.2
Наименьшее из скалярных творений (A*B),(C*D) одинаково 18.56
Эвелина
спасибо огромное!!)))))
Игорь
Спасибо тут принято выражать нажатием на умышленно сделанную для этой цели кнопку)))
, оставишь ответ?
Похожие вопросы
-
Вопросы ответы
Новое
NEW
Статьи
Информатика
Статьи
Последние вопросы
найти порядковый номер 41Э если в ядре 20 нейтронов
Разные вопросы.
в ряду натуральных чисел 3, 8, 10, 24, … 18 одно
Математика.
Предприятие по производству с/хоз продукции на производство затратило 3527000 руб Валовый
Разные вопросы.
Математика, задано на каникулы. ВАРИАНТ 1004
НОМЕР 1,2,3,4,5,6,7,8.
Математика.
Имеются три конденсатора емкостью С1=1мкФ, С2=2мкФ и С3=3мкФ. Какую наименьшую емкость
Физика.
Из точки м выходят 3 луча MP MN и MK причём
Геометрия.
выпиши в свою тетрадь те правила этикета которые тебе не были
Разные вопросы.
Анна хорошо учится у неё много подруг свободное от учёбы время
Обществознание.
10) Килограмм конфет дороже килограмма печенья на 52 р. За 8
Математика.
Во сколько раз число атомов кислорода в земной коре больше числа
Химия.
Облако тегов