π ΠΠ°Π΄Π°ΡΠ° ΠΏΡΠΎ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΡ
Π£ΡΠ»ΠΎΠ²ΠΈΠ΅: ΠΠ°ΠΌ Π΄Π°Π½Ρ Π΄Π²Π΅ ΠΌΠ°ΡΡΠΈΡΡ, Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΈΡ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ°ΡΡΠΈΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΡΠΌΠΈ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅: ΠΠ°ΠΏΠΈΡΠ΅ΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠΈΡΡΠΎΠΌ Python
#ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
#Π»ΠΈΠ½Π΅ΠΉΠ½Π°Ρ_Π°Π»Π³Π΅Π±ΡΠ°
Π£ΡΠ»ΠΎΠ²ΠΈΠ΅: ΠΠ°ΠΌ Π΄Π°Π½Ρ Π΄Π²Π΅ ΠΌΠ°ΡΡΠΈΡΡ, Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ Π΄Π»Ρ ΠΈΡ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ°ΡΡΠΈΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΡΠΌΠΈ.
Π Π΅ΡΠ΅Π½ΠΈΠ΅: ΠΠ°ΠΏΠΈΡΠ΅ΠΌ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π° ΡΠΈΡΡΠΎΠΌ Python
def matrix_multiply(A, B):
# Π‘Π½Π°ΡΠ°Π»Π° ΠΏΡΠΎΠ²Π΅ΡΠΈΠΌ, ΠΌΠΎΠΆΠ΅ΠΌ Π»ΠΈ ΠΌΡ Π²ΠΎΠΎΠ±ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ½ΠΎΠΆΠΈΡΡ ΡΡΠΈ ΠΌΠ°ΡΡΠΈΡΡ
if len(A[0]) != len(B):
raise ValueError("Number of A columns must equal number of B rows.")
# ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΡΠ΅ΠΌ ΡΠ΅Π·ΡΠ»ΡΡΠΈΡΡΡΡΡΡ ΠΌΠ°ΡΡΠΈΡΡ, Π·Π°ΠΏΠΎΠ»Π½Π΅Π½Π½ΡΡ Π½ΡΠ»ΡΠΌΠΈ
result = [[0 for _ in range(len(B[0]))] for _ in range(len(A))]
# ΠΠ΅ΡΠ΅ΠΌΠ½ΠΎΠΆΠΈΠΌ ΠΌΠ°ΡΡΠΈΡΡ
for i in range(len(A)):
for j in range(len(B[0])):
for k in range(len(B)):
result[i][j] += A[i][k] * B[k][j]
return result
# ΠΡΠΎΠ²Π΅ΡΠΈΠΌ ΡΡΠ½ΠΊΡΠΈΡ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅
A = [[1, 2, 3],
[4, 5, 6]]
B = [[7, 8],
[9, 10],
[11, 12]]
result = matrix_multiply(A, B)
for row in result:
print(row)
#ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅
#Π»ΠΈΠ½Π΅ΠΉΠ½Π°Ρ_Π°Π»Π³Π΅Π±ΡΠ°