কম্পিউটার টিউটোরিয়াল

পাইথন প্রোগ্রাম দুটি ম্যাট্রিক্স গুণ করা

এই আর্টিকেলে আমরা নিচের সমস্যা স্টেটমেন্টের সমাধান শিখব।

সমস্যা স্টেটমেন্ট - আমাদের দুটি ম্যাট্রিক্স দেওয়া আছে, আমাদের সেগুলো গুণ করে রেজাল্ট প্রিন্ট করতে হবে।

দুটি ম্যাট্রিক্স গুণ করার জন্য প্রথম ম্যাট্রিক্সের কলাম সংখ্যা দ্বিতীয় ম্যাট্রিক্সের সারি সংখ্যায় সমান হতে হবে।

প্রতিবার এই শর্ত true হলে কম্পিউটেশন করা হয়।

নিচে ইমপ্লিমেন্টেশনে কনসেপ্টটি নিই।

অ্যাপ্রোচ ১ - ব্রুট-ফোর্স মেথড

উদাহরণ

A = [[1, 2, 3],
     [4, 5, 6],
     [7, 8, 9]]

B = [[5, 3, 3],
     [6, 5, 4],
     [0, 2, 0]]

result = [[0, 0, 0],
          [0, 0, 0],
          [0, 0, 0]]

# সারি দিয়ে ইটারেশন
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]

for ele in result:
    print(ele)

আউটপুট

[17, 19, 11]
[50, 49, 32]
[83, 79, 53]

অ্যাপ্রোচ ২ - zip ফাংশন ব্যবহার

উদাহরণ

A = [[1, 2, 3],
     [4, 5, 6],
     [7, 8, 9]]

B = [[5, 3, 3],
     [6, 5, 4],
     [0, 2, 0]]

# বিল্ট-ইন zip ফাংশন ব্যবহার
result = [[sum(a * b for a, b in zip(A_row, B_col))
           for B_col in zip(*B)]
          for A_row in A]

for ele in result:
    print(ele)

আউটপুট

[17, 19, 11]
[50, 49, 32]
[83, 79, 53]

উপসংহার

এই আর্টিকেলে আমরা শিখেছি কীভাবে দুটি ম্যাট্রিক্স গুণ করা যায়।

  1. পাইথনে টেনসরফ্লো ব্যবহার করে দুটি ম্যাট্রিক্স গুণ করার পদ্ধতি

  2. পাইথনে দুটি বড় সংখ্যা যোগ করা

  3. পাইথনে দুটি ম্যাট্রিক্স যোগ করা

  4. Python-এ দুটি ম্যাট্রিক্স গুণ করার পদ্ধতি