দুই ম্যাট্রিক্স গুণনীয় (multiplicable) হয় যদি প্রথম ম্যাট্রিক্সের কলাম সংখ্যা দ্বিতীয় ম্যাট্রিক্সের রো সংখ্যার সমান হয়। অর্থাৎ, ম্যাট্রিক্স A (m × n) এবং ম্যাট্রিক্স B (p × q) গুণনযোগ্য হলে n == p হতে হবে।
উদাহরণ
ম্যাট্রিক্স ১: রো = ৩, কলাম = ২ ম্যাট্রিক্স ২: রো = ২, কলাম = ৫ যেহেতু ম্যাট্রিক্স ১-এর কলাম (২) = ম্যাট্রিক্স ২-এর রো (২), তাই গুণনযোগ্য।
উদাহরণ কোড
#include <iostream>
using namespace std;
int main() {
int row1, col1, row2, col2;
cout << "প্রথম ম্যাট্রিক্সের ডাইমেনশন দিন (রো কলাম): " << endl;
cin >> row1 >> col1;
cout << "দ্বিতীয় ম্যাট্রিক্সের ডাইমেনশন দিন (রো কলাম): " << endl;
cin >> row2 >> col2;
cout << "প্রথম ম্যাট্রিক্স" << endl;
cout << "রো: " << row1 << endl;
cout << "কলাম: " << col1 << endl;
cout << "দ্বিতীয় ম্যাট্রিক্স" << endl;
cout << "রো: " << row2 << endl;
cout << "কলাম: " << col2 << endl;
if (col1 == row2)
cout << "ম্যাট্রিক্সগুলো গুণনযোগ্য";
else
cout << "ম্যাট্রিক্সগুলো গুণনযোগ্য নয়";
return 0;
}
আউটপুট
প্রথম ম্যাট্রিক্সের ডাইমেনশন দিন (রো কলাম): 2 3 দ্বিতীয় ম্যাট্রিক্সের ডাইমেনশন দিন (রো কলাম): 3 3 প্রথম ম্যাট্রিক্স রো: 2 কলাম: 3 দ্বিতীয় ম্যাট্রিক্স রো: 3 কলাম: 3 ম্যাট্রিক্সগুলো গুণনযোগ্য
ব্যাখ্যা
প্রোগ্রামটি ব্যবহারকারী থেকে দুটি ম্যাট্রিক্সের রো ও কলাম নেয়। তারপর শর্ত col1 == row2 চেক করে। যদি সত্য হয়, তবে গুণনযোগ্য বলে প্রিন্ট করে, অন্যথায় নয়। এটি ম্যাট্রিক্স গুণ করার আগে একটি প্রিলিমিনারি চেক।