দুটি ম্যাট্রিক্স গুণ করা সম্ভব কেবল তখনই যখন প্রথম ম্যাট্রিক্সের কলাম সংখ্যা দ্বিতীয় ম্যাট্রিক্সের সারি সংখ্যার সমান হয়।
গুণ করা নেস্টেড লুপ ব্যবহার করে করা যায়। নিচের প্রোগ্রামে x এবং y নামে দুটি ম্যাট্রিক্স রয়েছে, প্রতিটিতে ৩ সারি এবং ৩ কলাম। ফলাফল z ম্যাট্রিক্সও ৩x৩ কাঠামো থাকবে। প্রথম ম্যাট্রিক্সের প্রতিটি সারির উপাদান দ্বিতীয় ম্যাট্রিক্সের সংশ্লিষ্ট কলামের উপাদানের সাথে গুণ করা হয়।
উদাহরণ
X = [[1,2,3], [4,5,6], [7,8,9]] Y = [[10,11,12], [13,14,15], [16,17,18]] result = [[0,0,0], [0,0,0], [0,0,0]] # X-এর সারিগুলোর মাধ্যমে ইটারেট for i in range(len(X)): for j in range(len(Y[0])): for k in range(len(Y)): result[i][j] += X[i][k] * Y[k][j] for r in result: print(r)
আউটপুট
ফলাফল: [84, 90, 96] [201, 216, 231] [318, 342, 366]