ম্যাট্রিক্সের ট্রান্সপোজ (Transpose) হলো রো এবং কলাম বদলিয়ে নতুন ম্যাট্রিক্স বানানো। অর্থাৎ transpose[j][i] = original[i][j]।
উদাহরণ
মূল ম্যাট্রিক্স (3x2): 1 2 3 4 5 6 ট্রান্সপোজ (2x3): 1 3 5 2 4 6
উদাহরণ কোড
#include <iostream>
using namespace std;
int main() {
int transpose[10][10];
int r = 3, c = 2;
int a[3][2] = {{1, 2}, {3, 4}, {5, 6}};
int i, j;
cout << "The matrix is:\n";
for (i = 0; i < r; ++i) {
for (j = 0; j < c; ++j)
cout << a[i][j] << " ";
cout << endl;
}
// Transpose
for (i = 0; i < r; ++i)
for (j = 0; j < c; ++j)
transpose[j][i] = a[i][j];
cout << "\nThe transpose of the matrix is:\n";
for (i = 0; i < c; ++i) {
for (j = 0; j < r; ++j)
cout << transpose[i][j] << " ";
cout << endl;
}
return 0;
}
আউটপুট
The matrix is: 1 2 3 4 5 6 The transpose of the matrix is: 1 3 5 2 4 6
ব্যাখ্যা
- মূল ম্যাট্রিক্স: r রো, c কলাম।
- ট্রান্সপোজ ম্যাট্রিক্স: c রো, r কলাম।
- নেস্টেড লুপ:
transpose[j][i] = a[i][j]— ইনডেক্স সোয়াপ। - প্রিন্ট সময় লুপ লিমিট বদলানো হয়েছে (i < c, j < r)।
প্রয়োগ: ম্যাট্রিক্স অ্যালজেব্রা, গ্রাফিক্স, মেশিন লার্নিং-এ ব্যাপক ব্যবহৃত।