এই নিবন্ধে আমরা বুঝব কিভাবে একটি ম্যাট্রিক্সের ট্রেস (Trace) ও নর্ম (Normal) বের করা যায়। একটি ম্যাট্রিক্সের নর্ম হল এর সকল এলিমেন্টের বর্গের যোগফলের বর্গমূল। একটি ম্যাট্রিক্সের ট্রেস হল এর প্রিন্সিপাল ডায়াগোনালে (আপার লেফ্ট থেকে লোয়ার রাইট) থাকা সকল এলিমেন্টের যোগফল।
ডেমো
ইনপুট:
The matrix is defined as: 2 3 4 5 2 3 4 6 9
আউটপুট:
Trace value: 13.0 Normal value: 14.142135623730951
এলগরিদম
ধাপ ১ - শুরু ধাপ ২ - একটি ইন্টিজার ম্যাট্রিক্স (input_matrix) ডিক্লেয়ার করুন ধাপ ৩ - মানগুলো সংজ্ঞায়িত করুন ধাপ ৪ - ট্রেস বের করতে: দুটি ফর-লুপ ব্যবহার করে ম্যাট্রিক্সের প্রতিটি এলিমেন্ট পরিদর্শন করুন, ডায়াগোনাল এলিমেন্টগুলো যোগ করুন এবং মানটি সংরক্ষণ করুন ধাপ ৫ - নর্ম বের করতে: দুটি ফর-লুপ ব্যবহার করে প্রতিটি এলিমেন্টের বর্গের যোগফল বের করুন, তারপর তার বর্গমূল নিয়ে মানটি সংরক্ষণ করুন ধাপ ৬ - ফলাফল প্রদর্শন করুন ধাপ ৭ - থামুন
উদাহরণ ১: মেইন ফাংশনে সব অপারেশন
public class NormalAndTrace {
public static void main(String args[]) {
int[][] input_matrix = {
{2, 3, 4},
{5, 2, 3},
{4, 6, 9}
};
int i, j, matrix_size = 3;
double trace = 0, square = 0, normal = 0;
System.out.println("The matrix is defined as: ");
for(i = 0; i < matrix_size; i++) {
for(j = 0; j < matrix_size; j++)
System.out.print(input_matrix[i][j]+" ");
System.out.println(" ");
}
System.out.println("\nThe Trace value of the matrix is ");
for(i = 0; i < matrix_size; i++) {
for(j = 0; j < matrix_size; j++) {
if(i == j) {
trace = trace + (input_matrix[i][j]);
}
}
}
System.out.println(trace);
System.out.println("\nThe Normal value of the matrix is ");
for(i = 0; i < matrix_size; i++) {
for(j = 0; j < matrix_size; j++) {
square = square + (input_matrix[i][j])*(input_matrix[i][j]);
}
}
normal = Math.sqrt(square);
System.out.println(normal);
}
}
আউটপুট
The matrix is defined as: 2 3 4 5 2 3 4 6 9 The Trace value of the matrix is 13.0 The Normal value of the matrix is 14.142135623730951
উদাহরণ ২: অবজেক্ট-ওরিয়েন্টেড পদ্ধতিতে ফাংশন ব্যবহার
public class NormalAndTrace {
static int matrix_size = 3;
static void normal_trace(int input_matrix[][]){
int i, j;
double trace = 0, square = 0, normal = 0;
System.out.println("\nThe Trace value of the matrix is ");
for(i = 0; i < matrix_size; i++) {
for(j = 0; j < matrix_size; j++) {
if(i == j) {
trace = trace + (input_matrix[i][j]);
}
}
}
System.out.println(trace);
System.out.println("\nThe Normal value of the matrix is ");
for(i = 0; i < matrix_size; i++) {
for(j = 0; j < matrix_size; j++) {
square = square + (input_matrix[i][j])*(input_matrix[i][j]);
}
}
normal = Math.sqrt(square);
System.out.println(normal);
}
public static void main(String args[]) {
int i, j;
int[][] input_matrix = { {2, 3, 4},
{5, 2, 3},
{4, 6, 9}
};
System.out.println("The matrix is defined as: ");
for(i = 0; i < matrix_size; i++) {
for(j = 0; j < matrix_size; j++)
System.out.print(input_matrix[i][j]+" ");
System.out.println(" ");
}
normal_trace(input_matrix);
}
}
আউটপুট
The matrix is defined as: 2 3 4 5 2 3 4 6 9 The Trace value of the matrix is 13.0 The Normal value of the matrix is 14.142135623730951