এই নিবন্ধে আমরা বুঝব কিভাবে একটি ম্যাট্রিক্সের ট্রান্সপোজ বের করা যায়। ম্যাট্রিক্সের এলিমেন্টগুলো সারি ও কলাম আকারে সাজানো থাকে। m সারি এবং n কলাম থাকলে তাকে m × n ম্যাট্রিক্স বলা হয়। একটি ম্যাট্রিক্সের ট্রান্সপোজ বের করা হয় এর সারিয়eket কলাম এবং কলামগুলোকে সারি বানিয়ে।
ডেমো
ইনপুট:
The matrix is defined as: 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4
আউটপুট:
The transpose of the matrix is: 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
এলগরিদম
ধাপ ১ - শুরু ধাপ ২ - দুটি ইন্টিজার ম্যাট্রিক্স (input_matrix, result_matrix) ডিক্লেয়ার করুন ধাপ ৩ - মানগুলো সংজ্ঞায়িত করুন ধাপ ৪ - দুটি ফর-লুপ ব্যবহার করে ম্যাট্রিক্সের প্রতিটি এলিমেন্ট পরিদর্শন করুন, ম্যাট্রিক্সের [i][j] পজিশনের এলিমেন্টকে রেজাল্ট ম্যাট্রিক্সের [j][i] পজিশনে অ্যাসাইন করুন ধাপ ৫ - রেজাল্ট ম্যাট্রিক্স প্রদর্শন করুন ধাপ ৬ - থামুন
উদাহরণ ১: মেইন ফাংশনে সব অপারেশন
public class MatrixTranspose {
static final int matrix_size = 4;
public static void main (String[] args) {
int input_matrix[][] = {
{1, 1, 1, 1},
{2, 2, 2, 2},
{3, 3, 3, 3},
{4, 4, 4, 4}
};
System.out.println("The matrix is defined as: \n");
for (int i = 0; i < matrix_size; i++) {
for (int j = 0; j < matrix_size; j++) {
System.out.print(input_matrix[i][j] + " ");
}
System.out.println();
}
int result_matrix[][] = new int[matrix_size][matrix_size];
for (int i = 0; i < matrix_size; i++)
for (int j = 0; j < matrix_size; j++)
result_matrix[i][j] = input_matrix[j][i];
System.out.println("\nThe transpose of the matrix is: ");
for (int i = 0; i < matrix_size; i++) {
for (int j = 0; j < matrix_size; j++) {
System.out.print(result_matrix[i][j] + " ");
}
System.out.println();
}
}
}
আউটপুট
The matrix is defined as: 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 The transpose of the matrix is: 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4
উদাহরণ ২: অবজেক্ট-ওরিয়েন্টেড পদ্ধতিতে ফাংশন ব্যবহার
public class MatrixTranspose {
static final int matrix_size = 4;
static void transpose(int input_matrix[][]) {
int result_matrix[][] = new int[matrix_size][matrix_size];
for (int i = 0; i < matrix_size; i++)
for (int j = 0; j < matrix_size; j++)
result_matrix[i][j] = input_matrix[j][i];
System.out.println("\nThe transpose of the matrix is: ");
for (int i = 0; i < matrix_size; i++) {
for (int j = 0; j < matrix_size; j++) {
System.out.print(result_matrix[i][j] + " ");
}
System.out.println();
}
}
public static void main (String[] args) {
int input_matrix[][] = {
{1, 1, 1, 1},
{2, 2, 2, 2},
{3, 3, 3, 3},
{4, 4, 4, 4}
};
System.out.println("The matrix is defined as: \n");
for (int i = 0; i < matrix_size; i++) {
for (int j = 0; j < matrix_size; j++) {
System.out.print(input_matrix[i][j] + " ");
}
System.out.println();
}
transpose(input_matrix);
}
}
আউটপুট
The matrix is defined as: 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 The transpose of the matrix is: 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4