fork download
  1. using System;
  2.  
  3. class Student
  4. {
  5. public string LastName { get; set; }
  6. public int[] Grades { get; set; }
  7. public double AverageGrade
  8. {
  9. get
  10. {
  11. if (Grades == null || Grades.Length == 0) return 0;
  12. double sum = 0;
  13. foreach (var grade in Grades)
  14. {
  15. sum += grade;
  16. }
  17. return sum / Grades.Length;
  18. }
  19. }
  20.  
  21. public Student(string lastName, int[] grades)
  22. {
  23. LastName = lastName;
  24. Grades = grades;
  25. }
  26. }
  27.  
  28. class Program
  29. {
  30. static void Main(string[] args)
  31. {
  32. Console.Write("Введите количество студентов: ");
  33. int numStudents = int.Parse(Console.ReadLine());
  34. Student[] students = new Student[numStudents];
  35.  
  36. for (int i = 0; i < numStudents; i++)
  37. {
  38. Console.Write($"Введите фамилию студента {i + 1}: ");
  39. string lastName = Console.ReadLine();
  40. int[] grades = new int[4];
  41.  
  42. for (int j = 0; j < 4; j++)
  43. {
  44. Console.Write($"Введите оценку {j + 1} студента {i + 1}: ");
  45. grades[j] = int.Parse(Console.ReadLine());
  46. }
  47.  
  48. students[i] = new Student(lastName, grades);
  49. }
  50.  
  51. Sort(students);
  52.  
  53. Console.WriteLine("\nОтсортированный список студентов по среднему баллу:");
  54. foreach (var student in students)
  55. {
  56. Console.WriteLine($"{student.LastName}: {student.AverageGrade:F2}");
  57. }
  58. }
  59.  
  60. static void Sort(Student[] students)
  61. {
  62. Array.Sort(students, (s1, s2) => s1.AverageGrade.CompareTo(s2.AverageGrade));
  63. }
  64. }
  65.  
Success #stdin #stdout 0.08s 31176KB
stdin
2
Костров
3
3
4
5
Анисимов
3
3
5
5
stdout
Введите количество студентов: Введите фамилию студента 1: Введите оценку 1 студента 1: Введите оценку 2 студента 1: Введите оценку 3 студента 1: Введите оценку 4 студента 1: Введите фамилию студента 2: Введите оценку 1 студента 2: Введите оценку 2 студента 2: Введите оценку 3 студента 2: Введите оценку 4 студента 2: 
Отсортированный список студентов по среднему баллу:
Костров: 3.75
Анисимов: 4.00