Article Outline
Python example 'identity matrix recognizer'
Functions in program:
def is_identity_matrix(matrix):
identity matrix recognizer
Python beginners example: identity matrix recognizer
# from cs 101 course of udacity.com (problem set solved solution)
# Given a list of lists representing a n * n matrix as input,
# define a procedure that returns True if the input is an identity matrix
# and False otherwise.
# An IDENTITY matrix is a square matrix in which all the elements
# on the principal/main diagonal are 1 and all the elements outside
# the principal diagonal are 0.
# (A square matrix is a matrix in which the number of rows
# is equal to the number of columns)
def is_identity_matrix(matrix):
total_elems = 0
last_pos = 0
for row in matrix:
total_elems += len(row)
if row[last_pos] == 1 and row.count(0) == len(row) - 1:
last_pos += 1
else:
return False
if total_elems == len(matrix[0]) * len(matrix[0]):
return True
else:
return False
# Test Cases:
matrix1 = [[1,0,0,0],
[0,1,0,0],
[0,0,1,0],
[0,0,0,1]]
print(is_identity_matrix(matrix1))
#>>>True
matrix2 = [[1,0,0],
[0,1,0],
[0,0,0]]
print(is_identity_matrix(matrix2))
#>>>False
matrix3 = [[2,0,0],
[0,2,0],
[0,0,2]]
print(is_identity_matrix(matrix3))
#>>>False
matrix4 = [[1,0,0,0],
[0,1,1,0],
[0,0,0,1]]
print(is_identity_matrix(matrix4))
#>>>False
matrix5 = [[1,0,0,0,0,0,0,0,0]]
print(is_identity_matrix(matrix5))
#>>>False
matrix6 = [[1,0,0,0],
[0,1,0,1],
[0,0,1,0],
[0,0,0,1]]
print(is_identity_matrix(matrix6))
#>>>False
matrix7 = [[1, -1, 1],
[0, 1, 0],
[0, 0, 1]]
print(is_identity_matrix(matrix7))
#>>>False
Useful links
- Learn Python: https://pythonbasics.org
- Download Python: https://python.org