Đếm tần suất của một giá trị cụ thể (số 1) trong mảng số nguyên.
Mã nguồn
using System;
public class Demo {
public static void Main() {
int[] num = { 1, 25, 1, 55, 1 };
int count = 0;
Console.WriteLine("Mảng số:");
foreach (int n in num) Console.WriteLine(n);
foreach (int j in num) {
if (j == 1) count++;
}
Console.WriteLine("Số lần xuất hiện của 1: " + count);
Console.ReadLine();
}
}
Kết quả
Mảng số:
1
25
1
55
1
Số lần xuất hiện của 1: 3
Cách hiện đại (LINQ)
using System.Linq;
int count = num.Count(x => x == 1);
// Hoặc
int count = num.Where(x => x == 1).Count();
Mở rộng: Đếm tần suất TẤT CẢ giá trị (Frequency Map)
var freq = num.GroupBy(x => x)
.ToDictionary(g => g.Key, g => g.Count());
foreach (var kv in freq) {
Console.WriteLine($"Số {kv.Key}: {kv.Value} lần");
}
// Kết quả: 1:3, 25:1, 55:1
Lưu ý
- Code gốc chỉ đếm giá trị cứng
1— dễ sửa thành tham số. foreachđọc dễ hơnforkhi không cần index.- Với mảng lớn, LINQ
Count(predicate)tối ưu nội bộ (không cấp phát iterator).