1
resposta

Atividade 10.

cursos = {
    "Python Avançado": {"vagas": 2, "inscritos": []},
    "Java para Iniciantes": {"vagas": 1, "inscritos": []},
    "Machine Learning": {"vagas": 0, "inscritos": []},
}

alunos = [
    {"nome": "Alice", "curso": "Python Avançado"},
    {"nome": "Bruno", "curso": "Python Avançado"},
    {"nome": "Carlos", "curso": "Java para Iniciantes"},
    {"nome": "Daniela", "curso": "Machine Learning"},
    {"nome": "Alice", "curso": "Python Avançado"},
]

for aluno in alunos:
    nome = aluno["nome"]
    curso = aluno["curso"]

    print(f"Inscrevendo {nome} no curso {curso}...")

    # Verifica se o aluno já está inscrito
    if nome in cursos[curso]["inscritos"]:
        print(f"{nome} já está inscrita no curso {curso}! Inscrição rejeitada.")

    # Verifica se há vagas disponíveis
    elif cursos[curso]["vagas"] > 0:
        cursos[curso]["inscritos"].append(nome)
        cursos[curso]["vagas"] -= 1
        print(f"Inscrição confirmada para {nome} no curso {curso}!")

    else:
        print(f"Turma lotada! {nome} não pôde se inscrever no curso {curso}.")

    print()

print("Todas as inscrições foram processadas!")
1 resposta

Oi, Luiz! Como vai?

Agradeço por compartilhar.

Seu código ficou bem organizado para gerenciar as inscrições, usando o dicionário cursos para controlar vagas e inscritos, além de validar tanto aluno repetido quanto turma lotada.

Uma dica interessante para o futuro é usar get() para verificar se o curso existe antes de acessar os dados, evitando erro caso algum nome de curso venha digitado diferente.


curso_info = cursos.get(curso)

if curso_info is None:
    print("Curso nao encontrado")
else:
    print("Curso encontrado")

Esse código busca o curso no dicionário e, se ele não existir, mostra uma mensagem sem interromper o programa.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!