w3resource

JavaScript: Check whether a given matrix is an identity matrix

JavaScript Basic: Exercise-117 with Solution

Write a JavaScript program to check whether a given matrix is an identity matrix.

Note: In linear algebra, the identity matrix, or sometimes ambiguously called a unit matrix, of size n is the n × n square matrix with ones on the main diagonal and zeros elsewhere.
[[1, 0, 0], [0, 1, 0], [0, 0, 1]] -> true
[[1, 0, 0], [0, 1, 0], [1, 0, 1]] -> false

Pictorial Presentation:

JavaScript: Check whether a given matrix is an identity matrix.

Sample Solution:

HTML Code:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title> Check if a given matrix is an identity matrix</title>
</head>
<body>

</body>
</html>

JavaScript Code:

function is_identity_Matrix(matrix_data) {
//Checks whether given matrix is a square matrix or not
for (var i = 0; i < matrix_data.length; i++)
  {
    rows = matrix_data.length;
cols = matrix_data[i].length;
if(rows != cols)
  {
   console.log("Matrix should be a square matrix");
   return false;
  }
  }
  for (var i = 0; i < matrix_data.length; i++)
   {
    for (var j = 0; j < matrix_data.length; j++)
     {
      if (matrix_data[i][j] !== 1 && i === j || matrix_data[i][j] && i !== j)
      {
        return false;
      }
    }
  }
  return true;
}
console.log(is_identity_Matrix([[1, 0, 0, 2], [0, 1, 0], [0, 0, 1]]))
console.log(is_identity_Matrix([[1, 0, 0],  [0, 1, 0],  [0, 0, 1]]))
console.log(is_identity_Matrix([[1, 0, 1],  [0, 1, 0],  [0, 0, 1]])) 

Sample Output:

Matrix should be a square matrix
false
true
false

Flowchart:

Flowchart: JavaScript - Check whether a given matrix is an identity matrix

ES6 Version:

function is_identity_Matrix(matrix_data) {
  for (let i = 0; i < matrix_data.length; i++) 
   {
    for (let j = 0; j < matrix_data.length; j++)
     {
      if (matrix_data[i][j] !== 1 && i === j || matrix_data[i][j] && i !== j)
      {
        return false;
      }
    }
  }
  return true;
}

console.log(is_identity_Matrix([[1, 0, 0],  [0, 1, 0],  [0, 0, 1]]))
console.log(is_identity_Matrix([[1, 0, 1],  [0, 1, 0],  [0, 0, 1]]))

Live Demo:

See the Pen javascript-basic-exercise-117 by w3resource (@w3resource) on CodePen.


Improve this sample solution and post your code through Disqus

Previous: Write a JavaScript program to find all the possible options to replace the hash in a string (Consists of digits and one hash (#)) with a digit to produce an integer divisible by 3.
Next: Write a JavaScript program to check whether a given number is in a given range.

What is the difficulty level of this exercise?



JavaScript: Tips of the Day

Parameter's value

function getItems(fruitList, ...args, favoriteFruit) {
  return [...fruitList, ...args, favoriteFruit]
}

getItems(["banana", "apple"], "pear", "orange")

...args is a rest parameter. The rest parameter's value is an array containing all remaining arguments, and can only be the last parameter! In this example, the rest parameter was the second parameter. This is not possible, and will throw a syntax error.

function getItems(fruitList, favoriteFruit, ...args) {
  return [...fruitList, ...args, favoriteFruit];
}


getItems(['banana', 'apple'], 'pear', 'orange');
The above example works. This returns the array [ 'banana', 'apple', 'orange', 'pear' ].

Ref: https://bit.ly/3jFRBje