Introdução
Neste desafio, você criará um programa em C++ para gerenciar uma lista de alunos utilizando o contêiner std::map da Biblioteca de Modelos Padrão (STL). O objetivo é praticar o uso de estruturas de dados do tipo chave-valor para rastrear e gerenciar informações de alunos de forma eficiente, simulando as tarefas de um administrador escolar.
O programa deve permitir a inclusão de novos alunos com seus respectivos nomes e idades, a consulta da idade de um aluno através do nome e a exibição de todos os registros contidos na lista.
Implementar uma Lista de Alunos Simples
Como administrador escolar, você precisa criar um sistema digital para rastrear e gerenciar com eficiência as informações dos alunos usando o contêiner map da STL do C++. Este desafio ajudará você a consolidar seus conhecimentos em estruturas de dados chave-valor.
Tarefas
- Criar um programa em C++ que gerencie uma lista de alunos usando
std::map - Implementar funções para adicionar alunos com seus nomes e idades
- Permitir a recuperação da idade de um aluno pelo seu nome
- Exibir todos os registros de alunos na lista
Requisitos
- Crie o programa no caminho
~/project/student_roster.cpp - Use
std::map<std::string, int>para armazenar os nomes e idades dos alunos - Implemente as seguintes operações:
- Adicionar um novo aluno à lista
- Recuperar a idade de um aluno pelo nome
- Exibir todos os alunos da lista
- Utilize apenas operações padrão de map da STL do C++ aprendidas anteriormente
- Compile o programa usando o compilador g++
Exemplos
Compile e execute o programa para gerenciar a lista de alunos:
g++ student_roster.cpp -o student_roster
./student_roster
Exemplo de entrada e saída:
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
Dicas
- Use
map.insert()oumap[]para adicionar alunos - Use
map.at()oumap[]para recuperar a idade de um aluno - Percorra o mapa usando um laço for baseado em intervalo (range-based for loop)
- Trate possíveis exceções ao recuperar idades
Resumo
Em resumo, este desafio exigiu a implementação de um programa em C++ para gerenciar uma lista de alunos utilizando o contêiner std::map. O programa permite adicionar novos alunos, consultar a idade de um aluno pelo nome e listar todos os registros. Este desafio teve como objetivo praticar o uso de estruturas de dados chave-valor no C++ para o gerenciamento eficiente de informações.



