freeCodeCamp/curriculum/challenges/chinese/08-coding-interview-prep/rosetta-code/vector-dot-product.chinese.md

1.9 KiB
Raw Blame History

title id challengeType videoUrl localeTitle
Vector dot product 594810f028c0303b75339ad3 5 矢量点积

Description

矢量被定义为具有三个维度由三个数字的有序集合表示XYZ

任务:

 Write a function that takes any numbers of vectors (arrays) as input and computes their dot product. 

您的函数应在无效输入(即不同长度的向量)上返回null

Instructions

Tests

tests:
  - text: dotProduct必须是一个函数
    testString: 'assert.equal(typeof dotProduct, "function", "dotProduct must be a function");'
  - text: dotProduct必须返回null
    testString: 'assert.equal(dotProduct(), null, "dotProduct() must return null");'
  - text: 'dotProduct[[1][1]]必须返回1。'
    testString: 'assert.equal(dotProduct([1], [1]), 1, "dotProduct([[1], [1]]) must return 1.");'
  - text: 'dotProduct[[1][1,2]]必须返回null。'
    testString: 'assert.equal(dotProduct([1], [1, 2]), null, "dotProduct([[1], [1, 2]]) must return null.");'
  - text: 'dotProduct[1,3-5][4-2-1]必须返回3。'
    testString: 'assert.equal(dotProduct([1, 3, -5], [4, -2, -1]), 3, "dotProduct([1, 3, -5], [4, -2, -1]) must return 3.");'
  - text: <code>dotProduct(...nVectors)</code>应该返回<code>dotProduct(...nVectors)</code>
    testString: 'assert.equal(dotProduct([ 0, 1, 2, 3, 4 ], [ 0, 2, 4, 6, 8 ], [ 0, 3, 6, 9, 12 ], [ 0, 4, 8, 12, 16 ], [ 0, 5, 10, 15, 20 ]), 156000, "<code>dotProduct(...nVectors)</code> should return 156000");'

Challenge Seed

function dotProduct() {
    // Good luck!
}

Solution

// solution required