Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C#

Chương trình C# minh họa ma trận tam giác trên (Upper Triangular Matrix)

Ma trận tam giác trên là ma trận vuông mà tất cả các phần tử dưới đường chéo chính đều bằng 0 (chỉ giữ phần tử trên hoặc trên đường chéo: i <= j).

Điều kiện

if (i <= j)
    Console.Write(A[i, j] + "\t"); // Giữ nguyên
else
    Console.Write("0\t");          // Phần dưới đường chéo = 0

Mã nguồn

using System;

class Demo {
    static void Main() {
        int m, n, i, j;
        
        Console.Write("Nhập số hàng và cột của ma trận: ");
        m = Convert.ToInt16(Console.ReadLine());
        n = Convert.ToInt16(Console.ReadLine());
        
        int[,] A = new int[10, 10];
        
        Console.Write("\nNhập các phần tử: ");
        for (i = 0; i < m; i++) {
            for (j = 0; j < n; j++) {
                A[i, j] = Convert.ToInt16(Console.ReadLine());
            }
        }
        
        Console.WriteLine("\nMa trận tam giác trên:");
        for (i = 0; i < m; i++) {
            for (j = 0; j < n; j++) {
                if (i <= j)
                    Console.Write(A[i, j] + "\t");
                else
                    Console.Write("0\t");
            }
            Console.WriteLine();
        }
        Console.ReadLine();
    }
}

Ví dụ

Ma trận 3x3 nhập:

1 2 3
4 5 6
7 8 9

Ma trận tam giác trên:

1 2 3
0 5 6
0 0 9

Lưu ý

  • Chỉ áp dụng cho ma trận vuông (số hàng = số cột).
  • Code gốc có lỗi logic: in ma trận gốc rồi mới in tam giác trên, và vòng lặp thứ 2 chỉ chạy j < 3 (hardcoded). Đã sửa trong bản này.
  • Ma trận tam giác dưới (Lower Triangular) ngược lại: giữ i >= j.