Javascript乘法而不使用*符号

时间:2015-10-09 03:19:11

标签: javascript

练习题1 参数:该函数接受两个正整数N和M. 返回值:该函数返回N和M的乘积。例如,如果提供整数5和8 该功能,它应该返回5和8的产品 - 它应该返回40。 额外 要求: 不使用乘法运算符(*)执行此操作。提示:乘法只是一系列的补充 操作

3 个答案:

答案 0 :(得分:4)

function mult(N, M) {
    return N / (1 / M);
}

答案 1 :(得分:0)

由于这是一个基本的练习,我认为这个答案是不可取的(但如果你可以解释的话,也许你会得到奖励积分),即使它没有*的数学。

function mult(N,M){
  var a = new Array(N);
  return a.join(""+M).split("").reduce((x,y)=>(parseInt(x)+parseInt(y)))+M
}

注意:这不适用于N<没时间纠正它。

答案 2 :(得分:0)

行。看。这听起来像你很年轻所以我认为给你怀疑的好处就在这里。所以你知道未来:Stackoverflow不是一个网站,你可以放弃一个功课问题,并期望人们为你做的工作。

我们有时会帮助完成家庭作业问题,但只有在您看来自己至少试图通过向我们展示您编写的一些代码时才尝试回答问题。如果您希望将来使用SO,可能会发现the help section有用,尤其是how to write a good question上的部分。

好的,讲课。

问题是如何使用a simple for loop将一些数字加在一起:

function getProduct(num1, num2) {

    // set total to zero
    // we'll be adding to this number in the loop
    var total = 0;

    // i is the index, l is the number of times we
    // iterate over the loop, in this case 8 (num2)
    for (var i = 0, l = num2; i < l; i++) {

        // for each loop iteration, add 5 to the total
        total += num1;
    }

    // finally return the total
    return total;
}

getProduct(5, 8); // 40