Implementar uma Lista de Alunos Simples

C++Beginner
Pratique Agora

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.

Este é um Desafio (Challenge), que difere de um Laboratório Guiado por exigir que você tente concluir a tarefa de forma independente, em vez de apenas seguir instruções passo a passo. Desafios costumam ser um pouco mais complexos. Se encontrar dificuldades, você pode debater com o Labby ou verificar a solução. Dados históricos mostram que este é um desafio de nível iniciante com uma taxa de aprovação de 100%. Ele recebeu uma taxa de avaliação positiva de 100% dos alunos.

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() ou map[] para adicionar alunos
  • Use map.at() ou map[] 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
✨ Verificar Solução e Praticar

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.