我正在编写一些代码,该代码生成一个随机矩阵,然后继续查找其行列式。到目前为止,我将递归公式用作行列式:
import numpy as np
import random
myarray = []
myinput=input('Choose a value for N:')
N=int(myinput)
for i in range(N):
myarray.append([0.0]*N)
for j in range(N):
for i in range(N):
myarray[i][j] = random.randint(0,100)
M=np.array(myarray)
print(M)
def det(matrix):
determinant=0
a=0
while a<N:
M_0a=np.delete(matrix,0,axis=0)
M_0a=np.delete(M_0a,a,axis=1)
print(M_0a)
a+=1
determinant= determinant + ((-1)**a)*(M[0][a])*det(M_0a)
return determinant
print(det(M))
由于不确定如何继续,我对该函数的编写不正确。基本上,while循环会连续消除第0行和ath列中的行和列,但是我想我需要某种if语句来确定新矩阵为2x2的条件,从而结束循环并计算2x2的基本行列式矩阵? 谢谢