编写程序,计算行列式的值,不调用numpy等工具。
def det(m):
if len(m) <= 0:
return None
elif len(m) == 1:
return m[0][0]
else:
s = 0
for i in range(len(m)):
n = [[row[a] for a in range(len(m)) if a != i] for row in m[1:]] # 这里生成余子式
s += m[0][i] * det(n) * (-1) ** (i % 2)
return s
print('答案为: ', det(eval(input('输入行列式(格式为 [[a11,a12],[a21,a22]] 以此类推): \n'))))
如果对你有帮助,可以点击我这个回答右上方的【采纳】按钮,给我个采纳吗,谢谢