Để tìm phần tử lớn nhất và nhỏ nhất trong một ma trận hai chiều trong C#, bạn cần thực hiện các bước sau:
- Khởi tạo ma trận hai chiều.
- Sử dụng hai biến để lưu trữ giá trị lớn nhất và nhỏ nhất.
- Duyệt qua từng phần tử của ma trận.
- So sánh mỗi phần tử với các biến lưu trữ giá trị lớn nhất và nhỏ nhất và cập nhật các biến này nếu cần thiết.
Dưới đây là mã nguồn minh họa:
using System;
class Program
{
static void Main()
{
// Khởi tạo ma trận hai chiều
int[,] matrix = {
{3, 5, 7},
{2, 8, 1},
{6, 4, 9}
};
// Giả định rằng phần tử đầu tiên là lớn nhất và nhỏ nhất
int max = matrix[0, 0];
int min = matrix[0, 0];
// Duyệt qua từng phần tử của ma trận
for (int i = 0; i < matrix.GetLength(0); i++)
{
for (int j = 0; j < matrix.GetLength(1); j++)
{
// Nếu phần tử hiện tại lớn hơn giá trị lớn nhất hiện tại, cập nhật giá trị lớn nhất
if (matrix[i, j] > max)
{
max = matrix[i, j];
}
// Nếu phần tử hiện tại nhỏ hơn giá trị nhỏ nhất hiện tại, cập nhật giá trị nhỏ nhất
if (matrix[i, j] < min)
{
min = matrix[i, j];
}
}
}
// In ra kết quả
Console.WriteLine($"Phần tử lớn nhất trong ma trận là: {max}");
Console.WriteLine($"Phần tử nhỏ nhất trong ma trận là: {min}");
}
}
Giải thích:
matrix.GetLength(0)
trả về số hàng của ma trận.matrix.GetLength(1)
trả về số cột của ma trận.- Biến
max
được khởi tạo với giá trị của phần tử đầu tiên của ma trận, và nó sẽ được cập nhật nếu tìm thấy phần tử lớn hơn. - Biến
min
được khởi tạo với giá trị của phần tử đầu tiên của ma trận, và nó sẽ được cập nhật nếu tìm thấy phần tử nhỏ hơn. - Hai vòng lặp for lồng nhau để duyệt qua từng phần tử của ma trận.
- Trong mỗi vòng lặp, giá trị của phần tử hiện tại được so sánh với
max
vàmin
để cập nhật nếu cần.
Comments