Advertisement
marekov

Untitled

May 8th, 2020
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.67 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4.  
  5. namespace AverageGrades
  6. {
  7.     //Judge 50/100
  8.     class Program
  9.     {
  10.         static void Main(string[] args)
  11.         {
  12.             int n = int.Parse(Console.ReadLine());
  13.             List<Student> register = new List<Student>();
  14.  
  15.             for (int i = 0; i < n; i++)
  16.             {
  17.                 string[] tokens = Console.ReadLine().Split();
  18.                 string tempName = tokens[0];
  19.                 double[] tempRegister = new double[tokens.Length - 1];
  20.  
  21.                 for (int el = 1; el < tokens.Length; el++)
  22.                 {
  23.                     tempRegister[el - 1] = double.Parse(tokens[el]);
  24.                 }
  25.                 Student student = new Student(tempName, tempRegister, tempRegister.Average());
  26.                 register.Add(student);
  27.             }
  28.  
  29.             List<Student> topStudents = new List<Student>();
  30.  
  31.             foreach (Student student in register.Where(x => x.Average > 5.00)
  32.                 .OrderBy(x => x.Name)
  33.                 .ThenBy(x => -x.Average))
  34.             {
  35.                 topStudents.Add(student);
  36.             }
  37.             foreach (Student student in topStudents)
  38.             {
  39.                 Console.WriteLine($"{student.Name} -> {student.Average:f2}");
  40.             }
  41.         }
  42.     }
  43.     class Student
  44.     {
  45.         public Student(string name, double[] grades, double average)
  46.         {
  47.             Name = name;
  48.             Grades = grades;
  49.             Average = average;
  50.         }
  51.  
  52.         public string Name { get; set; }
  53.  
  54.         public double[] Grades { get; set; }
  55.  
  56.         public double Average { get; set; }
  57.     }
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement