Найти скалярное произведение векторов - Free Pascal (205)

Узнай цену своей работы

Формулировка задачи:

заданы три вектора A, B, C размерности n найти скалярное произведение АВ, ВС, СА. ввод вектора оформить как процедуру, а вычисление скалярного произведения как функцию.Помогите пожалуйста.

Решение задачи: «Найти скалярное произведение векторов»

textual
Листинг программы
var n:byte;
type vec=array[1..20] of real;
procedure vvod(var a:vec;c:char);
var i:byte;
begin
writeln('Вектор ',c);
for i:=1 to n do
 begin
  a[i]:=5*random;
  write(a[i]:5:2);
 end;
writeln;
end;
function scal(a,b:vec):real;
var i:byte;
    s:real;
begin
s:=0;
for i:=1 to n do
s:=s+a[i]*b[i];
scal:=s;
end;
var a,b,c:vec;
begin
repeat
write('Размер векторов от  до 20 n=');
readln(n);
until n in [1..20];
vvod(a,'A');
vvod(b,'B');
vvod(c,'C');
writeln('Скалярное произведение АВ=',scal(a,b):0:2);
writeln('Скалярное произведение ВC=',scal(b,c):0:2);
writeln('Скалярное произведение CА=',scal(c,a):0:2);
readln
end.

Объяснение кода листинга программы

  1. Объявлены переменные: n (размер векторов), a, b, c (векторы), i (для цикла).
  2. Определены типы данных: vec (массив векторов).
  3. Определены процедуры: vvod (ввод вектора), scal (нахождение скалярного произведения).
  4. Введен цикл repeat-until для проверки корректности размера векторов.
  5. Введен ввод векторов a, b, c с помощью процедуры vvod.
  6. Вычислено и выведено скалярное произведение векторов a и b с помощью функции scal.
  7. Вычислено и выведено скалярное произведение векторов b и c с помощью функции scal.
  8. Вычислено и выведено скалярное произведение векторов c и a с помощью функции scal.
  9. Завершение работы программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.667 из 5
Похожие ответы