Задание: Вычислить определитель любого порядка.
def det_matrix(matrix):
n = len(matrix)
if n == 1:
return matrix[0][0]
else:
s = 0
m = matrix[1:]
for i in range(n):
minor = []
for j in range(n - 1):
minor.append(m[j][:i] + m[j][i + 1:n])
b = det_matrix(minor)
if i % 2 == 0:
s += matrix[0][i] * b
else:
s -= matrix[0][i] * b
return s
if __name__ == '__main__':
print(det_matrix([[1, 2, 3, 5, 6], [8, 7, 6, 7,5], [5,4,5,5,5], [5,6,9,8,4], [5,7,1,2,5]]))