Даны два одномерных вектора, вычислить их скалярное произведение - C (СИ)
Формулировка задачи:
Даны два одномерных вектора Х, Т, каждый из которых состоит из 10 элементов. Вычислить их скалярное произведение.
Решение задачи: «Даны два одномерных вектора, вычислить их скалярное произведение»
textual
Листинг программы
#include <stdio.h> #include <conio.h> #define MAX 10 main() { int i,p=0, X[MAX]={1,-2,-1,0,5,7,3,1,6,-5}, T[MAX]={5,3,2,-7,5,-3,-7,6,5,9}; for(i=0;i<MAX;i++) p+=X[i]*T[i]; printf("%d",p); getch(); return 0; }
Объяснение кода листинга программы
В этом коде:
- #include
— подключаем файл стандартного ввода/вывода, чтобы иметь возможность выводить данные на экран. - #include
— подключаем файл conio.h, который содержит функции для работы с консолью, в том числе и функцию getch(), которую мы используем в конце программы для того, чтобы приостановить выполнение программы и дать возможность пользователю что-то ввести с клавиатуры. - #define MAX 10 — определяем максимальное количество элементов в массивах X и T.
- main() — функция main() является точкой входа в программу.
- int i,p=0, X[MAX]={1,-2,-1,0,5,7,3,1,6,-5}, T[MAX]={5,3,2,-7,5,-3,-7,6,5,9}; — создаем переменные i и p, которые будем использовать в цикле. Переменная p инициализируется значением 0. Создаем два массива X и T, которые содержат значения, которые мы будем перемножать.
- *for(i=0;i<MAX;i++) p+=X[i]T[i];** — выполняем цикл по всем элементам массивов X и T. На каждой итерации умножаем текущие значения элементов и добавляем результат к переменной p.
- printf(
%d
,p); — выводим значение переменной p на экран. - getch(); — приостанавливаем выполнение программы и ждем, пока пользователь что-то не введет с клавиатуры.
- return 0; — завершаем работу функции main(), а следовательно и программы. Скалярное произведение двух векторов вычисляется как сумма произведений соответствующих элементов векторов.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д