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. Ο κώδικας ομαδοποιεί τους εργαζόμενους κατά τμήματα, υπολογίζει το μέσο μισθό σε κάθε τμήμα, ταξινομεί κατά φθίνουσα σειρά και επιλέγει το πρώτο (με το μέγιστο μέσο μισθό).