Computer >> Máy Tính >  >> Lập trình >> C#

Chương trình C # để kiểm tra xem hai ma trận có giống nhau không


Để kiểm tra xem các ma trận có giống nhau hay không, trước tiên bạn cần kiểm tra xem các ma trận có thể được so sánh hay không, vì để so sánh ít nhất kích thước của hai ma trận phải giống nhau .

if (row1 != row2 && col1 != col2) {
   Console.Write("Matrices can't be compared:\n");
}

Bây giờ, trong điều kiện khác, hãy kiểm tra xem các chỉ số có giống nhau hay không. Chúng tôi cũng đã đặt một lá cờ ở đây -

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!");
}

Ví dụ

Hãy để chúng tôi xem mã hoàn chỉnh để kiểm tra xem hai ma trận có giống hệt nhau hay không.

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 &amp;&amp; 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!");
         }
      }
   }
}

Đầu ra

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!