I tried to calculate the sum of two matrizes (multi-dimensional-arrays), but I get the following error-message:
Uncaught TypeError: Cannot set properties of undefined (setting '0')
at matAdd (matrixCalc.js:28)
when I do this code↓. I don't understand why "matSum[0][0]" is undefined.
// M1 M2
function matAdd(m1, m2){
let matSum = new Array(m1.length);
for (let i=0; i<m1.length; i ){ //create a blanco-matrix
matSum=new Array(m1[0].length);
}
if (m1.length == m2.length && m1[0].length==m2[0].length){
for (let i=0; i<m1.length; i ){
for (let j=0; j<m1[0].length; j ){
matSum[i][j]=m1[i][j] m2[i][j]; //HERE THE ERROR OCCURS
}
}
}
else console.log("Dimension-Error")
return matSum;
}
Thx for the help :)
CodePudding user response:
Try to initiate your matrix like this
function matAdd(m1, m2){
let matSum = new Array(m1.length);
for (let i=0; i<m1.length; i ){ //create a blanco-matrix
matSum [i] =new Array(m1[0].length); // for each column
}
if (m1.length == m2.length && m1[0].length==m2[0].length){
for (let i=0; i<m1.length; i ){
for (let j=0; j<m1[0].length; j ){
matSum[i][j]=m1[i][j] m2[i][j]; //HERE THE ERROR OCCURS
}
}
}
else console.log("Dimension-Error")
return matSum;
}