要检查矩阵是否相同,您需要首先检查是否可以比较矩阵,因为至少两个矩阵的维数应该相同。
if (row1 != row2 && col1 != col2) { Console.Write("Matrices can't be compared:\n"); }
现在,在其他情况下,检查指标是否相同。我们还在这里设置了一个标志-
if (row1 != row2 && col1 != col2) { Console.Write("Matrices can't be compared:\n"); } else { Console.Write("Comparison of Matrices: \n"); for (i = 0; i < row1; i++) { for (j = 0; j < col2; j++) { if (arr1[i, j] != arr2[i, j]) { flag = 0; break; } } } if (flag == 1) Console.Write("Our matrices are equal!\n\n"); else Console.Write("我们的矩阵不相等!"); }
让我们看完整的代码来检查两个矩阵是否相同。
using System; namespace Demo { public class ApplicationOne { public static void Main() { int[, ] arr1 = new int[10, 10]; int[, ] arr2 = new int[10, 10]; int flag = 1; int i, j, row1, col1, row2, col2; Console.Write("Rows in the 1st matrix: "); row1 = Convert.ToInt32(Console.ReadLine()); Console.Write("Columns in the 1st matrix: "); col1 = Convert.ToInt32(Console.ReadLine()); Console.Write("Rows in the 2nd matrix: "); row2 = Convert.ToInt32(Console.ReadLine()); Console.Write("Columns in the 2nd matrix: "); col2 = Convert.ToInt32(Console.ReadLine()); Console.Write("Elements in the first matrix:\n"); for (i = 0; i < row1; i++) { for (j = 0; j < col1; j++) { Console.Write("element - [{0}],[{1}] : ", i, j); arr1[i, j] = Convert.ToInt32(Console.ReadLine()); } } Console.Write("Elements in the second matrix:\n"); for (i = 0; i < row2; i++) { for (j = 0; j < col2; j++) { Console.Write("element - [{0}],[{1}] : ", i, j); arr2[i, j] = Convert.ToInt32(Console.ReadLine()); } } Console.Write("Matrix 1:\n"); for (i = 0; i < row1; i++) { for (j = 0; j < col1; j++) Console.Write("{0} ", arr1[i, j]); Console.Write("\n"); } Console.Write("Matrix 2:\n"); for (i = 0; i < row2; i++) { for (j = 0; j < col2; j++) Console.Write("{0} ", arr2[i, j]); Console.Write("\n"); } if (row1 != row2 && col1 != col2) { Console.Write("Matrices can't be compared:\n"); } else { Console.Write("Comparison of Matrices: \n"); for (i = 0; i < row1; i++) { for (j = 0; j < col2; j++) { if (arr1[i, j] != arr2[i, j]) { flag = 0; break; } } } if (flag == 1) Console.Write("Our matrices are equal!\n\n"); else Console.Write("我们的矩阵不相等!"); } } } }
输出结果
Rows in the 1st matrix: Columns in the 1st matrix: Rows in the 2nd matrix: Columns in the 2nd matrix: Elements in the first matrix: Elements in the second matrix: Matrix 1: Matrix 2: Comparison of Matrices: Our matrices are equal!