Термин «скалярное произведение» относится к математической операции, которая принимает два вектора и возвращает скалярное значение. На английском языке это широко известно как «скалярное произведение». Скалярное произведение двух векторов вычисляется путем умножения их соответствующих компонентов и суммирования результатов.
Теперь я предоставлю вам несколько методов расчета скалярного произведения на разных языках программирования, а также примеры кода:
-
Python:
def dot_product(vector1, vector2): return sum(x * y for x, y in zip(vector1, vector2)) # Example usage vector1 = [1, 2, 3] vector2 = [4, 5, 6] result = dot_product(vector1, vector2) print(result) # Output: 32 -
JavaScript:
function dotProduct(vector1, vector2) { if (vector1.length !== vector2.length) { throw new Error('Vectors must have the same length'); } return vector1.reduce((sum, x, index) => sum + x * vector2[index], 0); } // Example usage const vector1 = [1, 2, 3]; const vector2 = [4, 5, 6]; const result = dotProduct(vector1, vector2); console.log(result); // Output: 32 -
C++:
#include <iostream> #include <vector> double dotProduct(const std::vector<double>& vector1, const std::vector<double>& vector2) { if (vector1.size() != vector2.size()) { throw std::runtime_error("Vectors must have the same length"); } double result = 0.0; for (size_t i = 0; i < vector1.size(); ++i) { result += vector1[i] * vector2[i]; } return result; } // Example usage int main() { std::vector<double> vector1 = {1, 2, 3}; std::vector<double> vector2 = {4, 5, 6}; double result = dotProduct(vector1, vector2); std::cout << result << std::endl; // Output: 32 return 0; }
Это всего лишь несколько примеров того, как вычислить скалярное произведение на разных языках программирования. В зависимости от вашего конкретного варианта использования могут быть доступны и другие варианты или библиотеки.