To check whether the matrices are identical or not, you need to first check whether the matrixes can be compared or not, since for comparison at least the dimensions of the two matrices should be the same.
if (row1 != row2 && col1 != col2) {
Console.Write("Matrices can't be compared:\n");
}
Now, under else condition check for whether the metrics are identical or not. We have also set a flag here:
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("Our matrices are not equal!");
}
Let us see the complete code to check whether the two matrices are identical.
Example
Live Demo
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("Our matrices are not equal!");
}
}
}
}
Output
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!