【问题标题】:How to add this multidimensional matrix?如何添加这个多维矩阵?
【发布时间】:2016-10-16 04:53:08
【问题描述】:

我是 javascript 的新手。我不知道如何以矩阵方式添加这两个多维数组中的变量。你能建议任何 npm 模块吗? 一个例子或手动算法将不胜感激。

这是我的两个变量

var MatrixA = [[13,5,0][11,6,4][10,7,2][9,8,0]]
var MatrixB =  [[103,50,0][11,60,40][10,70,20][90,80,0]]

【问题讨论】:

    标签: javascript arrays matrix multidimensional-array mathjs


    【解决方案1】:

    不确定你到底想要什么 我正在考虑你想把这些数组的所有数字加起来 如果是这样,请考虑以下代码 sn -p

    var MatrixA = [[13,5,0],[11,6,4],[10,7,2],[9,8,0]];
    var MatrixB =  [[103,50,0],[11,60,40],[10,70,20],[90,80,0]];
    var sum=0;
    for(var i=0;i<3;i++){
        for(var j=0;j<3;j++){
            sum+=MatrixA[i][j]+MatrixB[i][j];
        }
    
    }
    console.log(sum);

    希望对你有帮助

    【讨论】:

    • 我想要像输出@Geeky这样的矩阵
    【解决方案2】:

    检查以下代码sn-p

    var MatrixA = [[13, 5, 0], [11, 6, 4], [10, 7, 2], [9, 8, 0]];
    var MatrixB = [[103, 50, 0], [11, 60, 40], [10, 70, 20], [90, 80, 0]];
    var sumMatrix = [[], [], []];
    var j = 0
      , k = 0;
    l = 0;
    for (var i = 0; i < 3; i++) {
      for(var j=0;j<3;j++){
        sumMatrix[i][j]=MatrixA[i][j]+MatrixB[i][j];
      }
    }for (var i = 0; i < 3; i++) {
      for(var j=0;j<3;j++){
        console.log(sumMatrix[i][j]);
        }
      }

    希望对你有帮助

    【讨论】:

      【解决方案3】:

      首先您需要声明另一个二维数组,比如说 sum=[[],[],[]] 来存储总和。然后您只需将两个矩阵相加即可。

      C 代码:

      for(i=0;i<r;++i)
          for(j=0;j<c;++j)
          {
              sum[i][j]=a[i][j]+b[i][j];
          }
      

      我实际上从来没有真正用 Javascript 编写过很多代码,但是能够在一个在线编译器上编写一个程序,我得到的是 NaN。但仍然有效,并提供输出。

      var MatrixA = [[13,5,0],[11,6,4],[10,7,2],[9,8,0]];
      var MatrixB =  [[103,50,0],[11,60,40],[10,70,20],[90,80,0]];
      var sum=[[],[],[],[]];
      
      for (var i=0 ; i<MatrixA.length; i++ )
      
          for (var j=0;j<MatrixB.length; j++)
              {
                   sum[i][j]=MatrixA[i][j]+MatrixB[i][j];
              }
      
      for (var i=0 ; i<MatrixA.length; i++ )
      
          for (var j=0;j<MatrixB.length; j++)
              {
                   console.log(sum[i][j]);
              }
      

      【讨论】:

        【解决方案4】:

        也许你可以这样做;

        var m1 = [[13,5,0],[11,6,4],[10,7,2],[9,8,0]],
            m2 = [[103,50,0],[11,60,40],[10,70,20],[90,80,0]],
        result = m1.map((a,i) => a.map((n,j) => n + m2[i][j]));
        
        console.log(JSON.stringify(result));

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2020-10-27
          • 1970-01-01
          • 2017-07-26
          • 2012-09-16
          • 1970-01-01
          • 2017-07-02
          • 1970-01-01
          • 2018-06-25
          相关资源
          最近更新 更多