Kiểm tra tất cả phần tử trong mảng/List có lớn hơn giá trị ngưỡng: dùng All (LINQ) hoặc vòng lặp.
Ví dụ minh họa
using System;
using System.Linq;
class Program
{
static void Main()
{
int[] arr = { 55, 100, 87, 45 };
int threshold = 80;
Console.WriteLine($"Mảng: [{string.Join(", ", arr)}]");
Console.WriteLine($"Ngưỡng: {threshold}");
// Cách 1: LINQ All (ngắn gọn, readable)
bool allGreater = arr.All(x => x > threshold);
Console.WriteLine($"Tất cả > {threshold}? {allGreater}");
// Cách 2: Tìm phần tử KHÔNG thỏa mãn (để hiển thị)
var notGreater = arr.Where(x => x <= threshold).ToList();
if (notGreater.Any())
{
Console.WriteLine($"Các phần tử ≤ {threshold}: {string.Join(", ", notGreater)}");
}
// Cách 3: Vòng lặp truyền thống
bool allGreaterLoop = true;
foreach (int x in arr)
{
if (x <= threshold)
{
allGreaterLoop = false;
break; // Thoát sớm khi tìm thấy counter-example
}
}
Console.WriteLine($"Vòng lặp: {allGreaterLoop}");
}
}
Kết quả đầu ra
Mảng: [55, 100, 87, 45] Ngưỡng: 80 Tất cả > 80? False Các phần tử ≤ 80: 55, 45 Vòng lặp: False
Lưu ý: Code gốc in ra các phần tử lớn hơn ngưỡng, nhưng tiêu đề bài viết là "kiểm tra tất cả phần tử lớn hơn". Logic đúng: dùng All(x => x > threshold) trả về true/false. Code gốc in ngược lại điều kiện.