Simple avec numpy : Si C = A*B
C=A.dot(B)
Sinon:
def cree_mat(n):
N=[]
M=[]
for i in range (0,n):
N.append(0)
for i in range(0,n):
M.append(N)
print(M)
return M
def produit(A,B): # realise le calcul de AB avec A et B ayant des dimensions autorisant cette opération.
if len(A[0]) != len(B): # on vérifie que les dimensions permettent le produit des deux matrices sinon on renvoie une liste vide
return []
C = cree_mat(len(A), len(B[0]))
for i in range(len(A)): # nombre de ligne de A
for j in range(len(B[0])): # nombre de colonne de B
for k in range (len(A[0])): # nombre de colonne de A
C[i][j] += A[i][k]*B[k][j]
return C
C=A.dot(B)
Sinon:
def cree_mat(n):
N=[]
M=[]
for i in range (0,n):
N.append(0)
for i in range(0,n):
M.append(N)
print(M)
return M
def produit(A,B): # realise le calcul de AB avec A et B ayant des dimensions autorisant cette opération.
if len(A[0]) != len(B): # on vérifie que les dimensions permettent le produit des deux matrices sinon on renvoie une liste vide
return []
C = cree_mat(len(A), len(B[0]))
for i in range(len(A)): # nombre de ligne de A
for j in range(len(B[0])): # nombre de colonne de B
for k in range (len(A[0])): # nombre de colonne de A
C[i][j] += A[i][k]*B[k][j]
return C
Aucun commentaire:
Enregistrer un commentaire