Вычисление скалярного произведения (скалярного произведения) векторов на разных языках программирования

Термин «скалярное произведение» относится к математической операции, которая принимает два вектора и возвращает скалярное значение. На английском языке это широко известно как «скалярное произведение». Скалярное произведение двух векторов вычисляется путем умножения их соответствующих компонентов и суммирования результатов.

Теперь я предоставлю вам несколько методов расчета скалярного произведения на разных языках программирования, а также примеры кода:

  1. 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
  2. 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
  3. 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;
    }

Это всего лишь несколько примеров того, как вычислить скалярное произведение на разных языках программирования. В зависимости от вашего конкретного варианта использования могут быть доступны и другие варианты или библиотеки.