1
resposta

Minha solução para o gerenciador de tarefas simples da Ana

def exibir_menu() -> str:
    print("""
--------------------------------------------------
          Organizador de Tarefas da Ana
--------------------------------------------------
        
1. Adicionar tarefa
2. Visualizar tarefas
3. Remover tarefa
4. Sair
    """)
    return input("Escolha uma opção: ")

def adicionar_tarefa(tarefas: list) -> list:
    tarefa = input("Digite a tarefa: ").strip()
    if tarefa:
        tarefas.append(tarefa)
        print("Tarefa adicionada!")
    else:
        print("Erro: A tarefa não pode estar vazia.")
    return tarefas

def exibir_tarefas(tarefas: list) -> None:
    if tarefas:
        print("\nTarefas: ")
        for i, tarefa in enumerate(tarefas, 1):
            print(f"{i}. {tarefa}")
    else:
        print("Nenhuma tarefa cadastrada.")

def remover_tarefas(tarefas: list) -> list:
    if not tarefas:
        print("Erro: Nenhuma tarefa para remover.")
    else:
        try:
            exibir_tarefas(tarefas)
            remover = int(input("\nDigite o número da tarefa a ser removida: "))
            if 0 < remover <= len(tarefas):
                removida = tarefas.pop(remover-1)
                print(f"Tafera '{removida}' removida")
            else:
                print(f"Erro: Não há tarefa {remover} para remover.")
        except ValueError:
            print("Erro: Entrada inválida! Digite um número.")
    return tarefas

def gerenciador_de_tarefas(tarefas: list) -> list:
    resposta = ""
    while resposta != "4":
        resposta = exibir_menu()
        match resposta:
            case "1":
                tarefas = adicionar_tarefa(tarefas)
            case "2":
                exibir_tarefas(tarefas)
            case "3":
                tarefas = remover_tarefas(tarefas)
            case "4":
                print("Saindo do gerenciador de tarefas. Até mais!")
            case _:
                print("Erro: Opção inválida! Escolha uma opção entre 1 e 4.")
    return tarefas

tarefas_da_ana = gerenciador_de_tarefas([])
1 resposta

Olá, Gabriel! Como vai?

Parabéns pela resolução da atividade!

Observei que você explorou o uso de funções para organizar o fluxo do programa, utilizou muito bem o match case para controlar as opções do menu e ainda compreendeu a importância do tratamento de erros para garantir uma experiência mais robusta ao usuário.

Continue postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Fico à disposição! E se precisar, conte sempre com o apoio do fórum.

Abraço e bons estudos!

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