ম্যাট্রিক্স গুণের প্রোগ্রামটি দুটি ম্যাট্রিক্সকে গুণ করতে ব্যবহৃত হয়। এই পদ্ধতিটি তখনই সম্ভব যখন প্রথম ম্যাট্রিক্সের কলামের সংখ্যা দ্বিতীয় ম্যাট্রিক্সের সারির সংখ্যার সমান হয়।
একটি প্রোগ্রাম যা C# এ ম্যাট্রিক্স গুণন প্রদর্শন করে তা নিম্নরূপ দেওয়া হল −
উদাহরণ
using System;
namespace MatrixMultiplicationDemo {
class Example {
static void Main(string[] args) {
int m = 2, n = 3, p = 3, q = 3, i, j;
int[,] a = {{1, 4, 2}, {2, 5, 1}};
int[,] b = {{3, 4, 2}, {3, 5, 7}, {1, 2, 1}};
Console.WriteLine("Matrix a:");
for (i = 0; i < m; i++) {
for (j = 0; j < n; j++) {
Console.Write(a[i, j] + " ");
}
Console.WriteLine();
}
Console.WriteLine("Matrix b:");
for (i = 0; i < p; i++) {
for (j = 0; j < q; j++) {
Console.Write(b[i, j] + " ");
}
Console.WriteLine();
}
if(n! = p) {
Console.WriteLine("Matrix multiplication not possible");
} else {
int[,] c = new int[m, q];
for (i = 0; i < m; i++) {
for (j = 0; j < q; j++) {
c[i, j] = 0;
for (int k = 0; k < n; k++) {
c[i, j] += a[i, k] * b[k, j];
}
}
}
Console.WriteLine("The product of the two matrices is :");
for (i = 0; i < m; i++) {
for (j = 0; j < n; j++) {
Console.Write(c[i, j] + "\t");
}
Console.WriteLine();
}
}
}
}
} আউটপুট
উপরের প্রোগ্রামের আউটপুট নিম্নরূপ দেওয়া হল।
Matrix a: 1 4 2 2 5 1 Matrix b: 3 4 2 3 5 7 1 2 1 The product of the two matrices is : 172832 223540
এখন আসুন উপরের প্রোগ্রামটি বুঝতে পারি।
প্রথমে, a এবং b দুটি ম্যাট্রিক্স প্রদর্শিত হয়। এর জন্য কোড স্নিপেট নিম্নরূপ দেওয়া হয়েছে।
for (i = 0; i < m; i++) {
for (j = 0; j < n; j++) {
Console.Write(a[i, j] + " ");
}
Console.WriteLine();
}
Console.WriteLine("Matrix b:");
for (i = 0; i < p; i++) {
for (j = 0; j < q; j++) {
Console.Write(b[i, j] + " ");
}
Console.WriteLine();
} যদি প্রথম ম্যাট্রিক্সের কলামের সংখ্যা দ্বিতীয় ম্যাট্রিক্সের সারির সংখ্যার সমান না হয় তবে ম্যাট্রিক্সগুলিকে গুণ করা যাবে না এবং এটি প্রদর্শিত হবে। এর জন্য কোড স্নিপেট নিম্নরূপ দেওয়া হল।
if(n! = p) {
Console.WriteLine("Matrix multiplication not possible");
} অন্যথায়, একটি নেস্টেড ফর লুপ ম্যাট্রিক্স a এবং b অর্থাৎ ম্যাট্রিক্স c এর গুণফল পেতে ব্যবহৃত হয়। তারপর ম্যাট্রিক্স c প্রদর্শিত হয়। এর জন্য কোড স্নিপেট নিম্নরূপ দেওয়া হয়েছে -
for (i = 0; i < m; i++) {
for (j = 0; j < q; j++) {
c[i, j] = 0;
for (int k = 0; k < n; k++) {
c[i, j] += a[i, k] * b[k, j];
}
}
}
Console.WriteLine("The product of the two matrices is :");
for (i = 0; i < m; i++) {
for (j = 0; j < n; j++) {
Console.Write(c[i, j] + "\t");
}
Console.WriteLine();
}