Введение
В рамках этого испытания вам предстоит разработать программу на C++, которая управляет реестром студентов с помощью контейнера std::map из стандартной библиотеки шаблонов (STL). Цель задания — закрепить навыки работы со структурами данных типа «ключ-значение» для эффективного учета и управления информацией о студентах от лица администратора учебного заведения.
Программа должна поддерживать добавление новых записей (имя и возраст), поиск возраста студента по его имени, а также вывод полного списка всех зарегистрированных студентов.
Реализация простого реестра студентов
Представьте себя в роли администратора школы. Вам необходимо создать цифровую систему для эффективного отслеживания данных учащихся, используя возможности контейнера map в C++ STL. Это упражнение поможет вам освоить работу с ассоциативными контейнерами.
Задачи
- Написать программу на C++, управляющую реестром студентов через
std::map. - Реализовать функционал добавления студентов (имя и возраст).
- Обеспечить возможность получения возраста студента по его имени.
- Реализовать вывод всех записей реестра на экран.
Требования
- Создайте файл с исходным кодом по пути
~/project/student_roster.cpp. - Используйте
std::map<std::string, int>для хранения имен и возраста. - Реализуйте следующие операции:
- Добавление нового студента в реестр.
- Поиск возраста студента по имени.
- Отображение списка всех студентов.
- Используйте только стандартные операции STL map, изученные в предыдущих модулях.
- Скомпилируйте программу с помощью компилятора g++.
Примеры
Скомпилируйте и запустите программу для управления реестром:
g++ student_roster.cpp -o student_roster
./student_roster
Пример взаимодействия с программой:
Enter command (add/get/list/quit): add
Enter student name: Alice
Enter student age: 20
Enter command (add/get/list/quit): add
Enter student name: Bob
Enter student age: 22
Enter command (get/list): get
Enter student name: Alice
Alice is 20 years old
Enter command (list): list
Alice: 20
Bob: 22
Подсказки
- Для добавления данных используйте
map.insert()или операторmap[]. - Для получения значения используйте
map.at()или операторmap[]. - Для перебора элементов контейнера используйте цикл for на основе диапазона (range-based for loop).
- Предусмотрите обработку возможных исключений при поиске возраста.
Резюме
Подводя итог, в этом испытании вы реализовали программу на C++ для управления реестром студентов с использованием контейнера std::map. Программа позволяет добавлять новых учащихся, находить их возраст по имени и просматривать весь список записей. Это задание помогло вам на практике применить структуры данных «ключ-значение» для эффективной организации информации.



