お世話になっております。
Python3.8.5をWindows10下で使っております。
下記プログラムでは、どんな順番で、
プログラムは進行するのでしょうか?
Main routineの方から先に入っていくはずだと思うのですが、
デバッガーを起動すると、
そこは最初は引っかからず、関数のcofactorや、同じ関数のdeterminantの
方に先に入っていくのですが。。。
私の思い違いでしょうか?
coding: Matrix
print("")
print("Kia ora!")
print("")
def cofactor(i,j,A):
n = len(A[0])
B = [ ]
for k in range(n):
if k==i:
continue
x=[ ] # gen row vector
for l in range(n):
if l==j:
continue
x.append(A[k][l])
B.append(x)
print(x)
return B
cofactor expansion
def determinant(A):
n=len(A)
if n==1:
return A[0][0]
det=0
for i in range(n):
det = det + (-1)**(i+0) * A[i][0] * determinant(cofactor(i,0,A))
return det
Main Part
X=[[1,3,2,4,5],
[2,4,3,1,3],
[3,1,2,5,4],
[3,1,2,3,4],
[4,5,3,2,1],
[5,2,1,4,3]]
d=determinant(X)
c=cofactor(i,j,A)
print("*** Determinant ==> ***")
print(d)
print("")
回答3件
あなたの回答
tips
プレビュー