.NET 4.x Класс, содержащий сведения о студентах. Как осуществить сортировку - C#
Формулировка задачи:
есть задача
На основе данных входного файла составить список студентов группы, включив следующие данные: ФИО, номер группы, результаты сдачи трех экзаменов. Вывести в новый файл информацию о студентах, успешно сдавших сессию, отсортировав по номеру группы.
Написал код (Класс) но не как не могу отсортировать PS по коду принимаю любую критику и предложения
по номеру группы.
class Student_List { List<Student> _Sudent_List = new List<Student>(); //Денамичиский массив студентов; /// <summary> /// Структура студент содержет поля Ф,И,О, Номер группы, И 3 оценки; /// </summary> struct Student { internal String _Name, //имя; _Family_Name, //фамилия; _Middle_Name; //отчество; internal Int32 _Number_Group, //Номер группы; _First_Exam, //Первый экзамен; _Second_Exam, //Второй экзамен; _Third_Exam; //Третий экзамен; } /// <summary> /// Добвляет запись о студенте в коллекцию; /// </summary> /// <param name="Name">Имя студента</param> /// <param name="Family_Name">Фамилия студента</param> /// <param name="Middle_Name">Отчество студента</param> /// <param name="Number_Group">Номер группы</param> /// <param name="First_Exam">Результат Первного экзамена</param> /// <param name="Second_Exam">Результат Второго экзамена</param> /// <param name="Third_Exam">Результат Третьего экзамена</param> public void Add(Int32 Number_Group, String Family_Name, String Name, String Middle_Name, Int32 First_Exam, Int32 Second_Exam, Int32 Third_Exam) { _Sudent_List.Add( new Student { _Name = Name, _Family_Name = Family_Name, _Middle_Name = Middle_Name, _Number_Group = Number_Group, _First_Exam = First_Exam, _Second_Exam = Second_Exam, _Third_Exam = Third_Exam }); } //перегрузка Add .. void Add(Student student) { _Sudent_List.Add(student); } //составление списка сдавших студентов public Student_List Sdali() { Student_List _Temp = new Student_List(); for(Int32 i =0; i < _Sudent_List.Count; i++){//если по всем экзаменам >2 то сдал if (_Sudent_List[i]._First_Exam > 2 && _Sudent_List[i]._Second_Exam > 2 && _Sudent_List[i]._Third_Exam > 2) { _Temp.Add(_Sudent_List[i]);//добавляю в коллекцию сдавших } } return _Temp; } //Здесь не чего не происходит :( public void Sort_Number() { this._Sudent_List.Sort(); } } private void Main() { Student_List _Student_List = new Student_List(); using (StreamReader _Read = new StreamReader("List.txt")) { while (!_Read.EndOfStream)//иду до конца файла { String[] _Temp = _Read.ReadLine().Split(' '); _Student_List.Add( Convert.ToInt32(_Temp[0]), _Temp[1], _Temp[2], _Temp[3], Convert.ToInt32(_Temp[4]), Convert.ToInt32(_Temp[5]), Convert.ToInt32(_Temp[6])); } } _Student_List.Sdali().Sort_Number(); //С этим кодом винда пишет что прога не совместим и настраивает режим совместимости О_о }
Решение задачи: «.NET 4.x Класс, содержащий сведения о студентах. Как осуществить сортировку»
textual
Листинг программы
public void Sort_Number() { this._Sudent_List.Sort(delegate( Student T,Student B){ return T._Number_Group.CompareTo(B._Number_Group); }); }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д