判断两个矩阵是否相等的Java程序
1 说明
在此程序中,我们需要判断给定的矩阵是否相等。
当且仅当两个矩阵满足以下条件时,才称它们相等:
- 两个矩阵应具有相同数量的行和列。
- 两个矩阵应具有相同的对应元素。
考虑上面的示例,其中矩阵A和B相等,因为它们具有相同的大小和相同的对应元素。
2 算法思路
- 步骤1:开始
- 步骤2:定义row1,col1,row2,col2
- 步骤3: 初始化第一个矩阵a [] [] = {{1,2,3},{8,4,6},{4,5,7}}
- 步骤4: 初始化第二个矩阵b [] [] = {{1,2,3},{8,4,6} {4,5,7}}
- 步骤5: row1 = a.length
- 步骤6: col1 = a [0] .length
- 步骤7: row2 = b.length
- 步骤8: col2 = b [0] .length
- 步骤9: if(row1!= row2 || col1!= col2)
则
打印“否”,
否则
转到步骤10;否则,执行步骤10。 - 步骤10:重复步骤11直到i <row1
// for(i = 0; i <row1; i ++) - 步骤11:重复STEP12直到j <col1
// for(j = 0; j <col1; j ++) - 步骤12:如果(A [i] [j] = B [i] [j]),那么
标志=假
破 - 步骤13: if(flag)
然后打印“是”,
否则
打印“否” - 步骤14:结束
3 程序实现
/**
* 一点教程网: http://www.yiidian.com
*/
public class EqualMatrix
{
public static void main(String[] args) {
int row1, col1, row2, col2;
boolean flag = true;
//Initialize matrix a
int a[][] = {
{1, 2, 3},
{8, 4, 6},
{4, 5, 7}
};
//Initialize matrix b
int b[][] = {
{1, 2, 3},
{8, 4, 6},
{4, 5, 7}
};
//Calculates the number of rows and columns present in the first matrix
row1 = a.length;
col1 = a[0].length;
//Calculates the number of rows and columns present in the second matrix
row2 = b.length;
col2 = b[0].length;
//Checks if dimensions of both the matrices are equal
if(row1 != row2 || col1 != col2){
System.out.println("Matrices are not equal");
}
else {
for(int i = 0; i < row1; i++){
for(int j = 0; j < col1; j++){
if(a[i][j] != b[i][j]){
flag = false;
break;
}
}
}
if(flag)
System.out.println("Matrices are equal");
else
System.out.println("Matrices are not equal");
}
}
}
以上代码输出结果为:
Matrices are equal
热门文章
优秀文章