Junior — Middle
Jak można określić dział z najwyższą średnią pensją w tabeli pracowników?
sobes.tech AI
Odpowiedź od AI
Aby określić dział z najwyższą średnią pensją w tabeli pracowników w C#, można użyć LINQ do grupowania pracowników według działów, obliczania średniej pensji i wybrania działu z najwyższą wartością.
Przykład:
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($"Dział z najwyższą średnią pensją: {maxAvgSalaryDept.Department}, średnia pensja: {maxAvgSalaryDept.AvgSalary}");
}
Tutaj employees to kolekcja obiektów z polami Department i Salary. Kod grupuje pracowników według działów, oblicza średnią pensję w każdym dziale, sortuje malejąco i wybiera pierwszy (z najwyższą średnią pensją).