Sobes.tech
Junior — Middle

Как да определим отдела с най-висока средна заплата в таблицата с служителите?

sobes.tech AI

Отговор от AI

За да определите отдел с най-висока средна заплата в таблицата с служители в C#, можете да използвате LINQ за групиране на служителите по отдели, изчисляване на средната заплата и избор на отдела с най-високата стойност.

Пример:

var maxAvgSalaryDept = employees
    .GroupBy(e => e.Department)
    .Select(g => new { Department = g.Key, AvgSalary = g.Average(e => e.Salary) })
    .OrderByDescending(d => d.AvgSalary)
    .FirstOrDefault();

if (maxAvgSalaryDept != null)
{
    Console.WriteLine($"Отдел с най-висока средна заплата: {maxAvgSalaryDept.Department}, средна заплата: {maxAvgSalaryDept.AvgSalary}");
}

Тук employees е колекция от обекти с полета Department и Salary. Кодът групира служителите по отдели, изчислява средната заплата във всеки отдел, сортира ги по низходящ ред и избира първия (с най-висока средна заплата).