Java 程序判断矩阵是否为对称矩阵

编写一个Java程序来查找矩阵是否为对称矩阵,并附带示例。对称矩阵是一个方阵,如果它等于其转置矩阵。

Java 程序判断矩阵是否为对称矩阵

在此Java对称矩阵示例中,我们声明了一个3x3的整型矩阵org_arr。接下来,我们使用另一个trans_arr来存储转置矩阵。在另一个for循环中,我们使用If语句来检查org_arr中的元素是否不等于转置矩阵trans_arr。如果为真,我们增加count值并应用break语句退出循环。接下来,我们使用If Else语句根据count值打印对称矩阵的输出。

public class SymmetricMatrix {
	public static void main(String[] args) {
		
		int i, j, count = 1;	
		
		int[][] org_arr = {{15, 25, 35}, {45, 55, 65}, {75, 85, 95}};
		int[][] trans_arr = new int[3][3];
		

		for(i = 0; i < org_arr.length ; i++)
		{
			for(j = 0; j < org_arr[0].length; j++)
			{
				trans_arr[j][i] = org_arr[i][j];
			}
		}
		
		System.out.println("\nAfter Transposing Matrix Items are :");
		for(i = 0; i < trans_arr.length ; i++)
		{
			for(j = 0; j < trans_arr[0].length; j++)
			{
				System.out.format("%d \t", trans_arr[i][j]);
			}
			System.out.print("\n");
		}
		
		for(i = 0; i < org_arr.length ; i++)
		{
			for(j = 0; j < org_arr[0].length; j++)
			{
				if(org_arr[i][j] != trans_arr[i][j])
				{
					count++;
					break;
				}
			}
		}
		
		if(count == 1) {
			System.out.println("\nMatrix is a Symmetric Matrix");
		}
		else {
			System.out.println("\nMatrix is Not a Symmetric Matrix");
		}
	}
}
Java Program to find Matrix is a Symmetric Matrix

Java 程序判断矩阵是否为对称矩阵 示例 2

这个Java代码与上面相同。但是,这个对称代码允许用户输入行数、列数和矩阵元素。

import java.util.Scanner;

public class Example {
	private static Scanner sc;
	
	public static void main(String[] args) {
		
		int i, j, rows, columns, count = 1;
		
		sc= new Scanner(System.in);
		
		System.out.println("\n Enter Rows and Columns :  ");
		rows = sc.nextInt();
		columns = sc.nextInt();
		
		int[][] org_arr = new int[rows][columns];
		int[][] trans_arr = new int[rows][columns];
		
		System.out.println("\n Please Enter the Sparse Matrix Items :  ");
		for(i = 0; i < rows; i++) {
			for(j = 0; j < columns; j++) {
				org_arr[i][j] = sc.nextInt();
			}		
		}
		
		for(i = 0; i < org_arr.length ; i++)
		{
			for(j = 0; j < org_arr[0].length; j++)
			{
				trans_arr[j][i] = org_arr[i][j];
			}
		}
		
		System.out.println("\nAfter Transposing Matrix Items are :");
		for(i = 0; i < trans_arr.length ; i++)
		{
			for(j = 0; j < trans_arr[0].length; j++)
			{
				System.out.format("%d \t", trans_arr[i][j]);
			}
			System.out.print("\n");
		}
		
		for(i = 0; i < org_arr.length ; i++)
		{
			for(j = 0; j < org_arr[0].length; j++)
			{
				if(org_arr[i][j] != trans_arr[i][j])
				{
					count++;
					break;
				}
			}
		}
		
		if(count == 1) {
			System.out.println("\nIt is a Symmetric Matrix");
		}
		else {
			System.out.println("\nIt is Not");
		}
	}
}

对称矩阵输出

 Enter Rows and Columns :  
3 3

 Please Enter the Sparse Matrix Items :  
1 2 3
2 4 5
3 5 4

After Transposing Matrix Items are :
1 	2 	3 	
2 	4 	5 	
3 	5 	4 	

It is a Symmetric Matrix

让我尝试使用其他值来检查对称矩阵。

 Enter Rows and Columns :  
3 3

 Please Enter the Sparse Matrix Items :  
1 2 3
4 5 6
7 8 9

After Transposing Matrix Items are :
1 	4 	7 	
2 	5 	8 	
3 	6 	9 	

It is Not