c++ Нужно подправить код
Составить список, содержащий сведения об N студентах. Для каждого учащегося указать фамилию, дату рождения, оценки сессии по трем предметам. Информацию о каждом студенте оформить в виде структуры. Совокупность структур объединить в массив. Информацию о студентах хранить в файле. Составить программу, которая обеспечивает ввод исходных данных, сортировку, обработку и вывод на экран информации в соответствии с требованиями: Отсортировать студентов по фамилии в обратном алфавитному порядке. Вывести на экран фамилии и даты рождения студентов, не получивших за все время обучения ни одной оценки 2. N = 6 Как я понимаю я должен сам вводить фамилии год и оценки.. Помогите отредактировать #include "pch.h" #include <iostream> #include <iostream> #include <fstream> #include <iomanip> #include <algorithm> constexpr size_t N = 6; // количество записей constexpr size_t str_size = 20; // размер символьной строки constexpr size_t marks_count = 3; // количество оценок struct Date { // дата unsigned short day; unsigned short month; unsigned short year; }; struct Student { // студент char name[str_size]; Date birth_date; unsigned short marks[marks_count]; }; void fill_file(const char*); // запись первоначальной информации в файл size_t read_from_file(const char*, Student(&)[N]); // чтение из файла bool by_name(const Student&, const Student&); // предикат сортировки в порядке, обратном алфавитному std::ostream& operator<<(std::ostream&, const Date&); // форматированный вывод даты std::ostream& operator<<(std::ostream&, const Student&);// форматированный вывод информации о студенте int main() { fill_file("data.bin"); Student arr[N]; size_t count = read_from_file("data.bin", arr); std::sort(std::begin(arr), std::end(arr), by_name); for (size_t i = 0; i < count; ++i) { bool to_print = true; for (size_t j = 0; j < marks_count; ++j) if (arr[i].marks[j] == 2) { to_print = false; break; }