import os
tarefas = []
def mostrar_opcoes():
print("1. Adicionar tarefa \n2. Visualizar tarefas \n3. Remover tarefa \n4. Sair")
def selecionar_opcao():
opcao = int(input("\nEscolha uma opção: "))
match opcao:
case 1:
adicionar_tarefa()
case 2:
visualizar_tarefas()
case 3:
remover_tarefa()
case 4:
sair()
case _:
tratar_erro("Erro: Opção inválida! Escolha uma opção entre 1 e 4.")
def adicionar_tarefa():
titulo_tarefa("Adicionar Tarefa")
nome_tarefa = input("Digite a tarefa: ")
tarefas.append(nome_tarefa)
print("Tarefa adicionada!")
menu_principal()
def visualizar_tarefas():
titulo_tarefa("Visualizar Tarefa")
if len(tarefas) > 0:
print("Tarefas: ")
for i in range(len(tarefas)):
print(f"{i+1}. {tarefas[i]}")
menu_principal()
else:
tratar_erro("Erro: Nenhuma tarefa para visualizar.")
def remover_tarefa():
titulo_tarefa("Remover Tarefa")
tarefa = input("Digite o número da tarefa a ser removida: ")
if len(tarefas) == 0:
tratar_erro("Erro: Nenhuma tarefa para remover.")
else:
valida_entrada_remocao_tarefa(tarefa)
def valida_entrada_remocao_tarefa(tarefa):
try:
numero_tarefa = int(tarefa)
except:
tratar_erro("Erro: Entrada inválida! Digite um número.")
else:
valida_remocao_tarefa(numero_tarefa)
def valida_remocao_tarefa(numero_tarefa):
try:
tarefa_removida = tarefas.pop(numero_tarefa-1)
except:
tratar_erro(f"Erro: Não foi encontrada atividade de número {numero_tarefa}")
else:
print(f"Tarefa '{tarefa_removida}' removida!")
menu_principal()
def sair():
print("Saindo do gerenciador de tarefas. Até mais!")
def titulo_tarefa(titulo):
os.system("cls")
print(f"{titulo}\n")
def tratar_erro(mensagem):
input(f"{mensagem} Aperte qualquer tecla para continuar. ")
main()
def menu_principal():
input("\nAperte qualquer tecla para continuar ")
main()
def main():
os.system("cls")
mostrar_opcoes()
selecionar_opcao()
if __name__ == "__main__":
main()