Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

Exercício: Controle de acesso ao escritório

Boa noite,
Segue a resolução do exercício

def verificar_acesso(horario):
    try:
           hora, minuto = map(int, horario.split(":"))
    except ValueError:
            return "Formato inválido! Use HH:MM (ex: 08:30)."
    if hora < 0 or hora > 23 or minuto < 0 or minuto > 59:
        return "Horário inválido! Verifique os valores digitados."
    
    #Converte tudo para minutos, facilita a comparação
    minutos_atual = hora * 60 + minuto
    minutos_inicio = 8 * 60
    minutos_fim = 18 * 60
    
    if minutos_inicio <= minutos_atual <= minutos_fim
        return "Acesso permitido."
    else: 
        return "Acesso negado. Fora do horário permitido (08:00 às 18:00)."
    
    #Programa principal
    horario_usuario = input("Digite o horário atual (HH:MM): "
    resultado = verificar_acesso(horario_usuario)
    print(resultado)
1 resposta

Olá, Laura. Como vai?

Vi que você explorou o try/except para tratar erros de conversão com Python, utilizou muito bem a conversão de horário em minutos para simplificar a comparação de intervalos e ainda compreendeu a importância da validação de valores de entrada para evitar dados inconsistentes.

Uma dica é que faltou os dois pontos na condição do if e faltou fechar o parêntese na chamada do input. Assim:

if minutos_inicio <= minutos_atual <= minutos_fim:
    return "Acesso permitido."

horario_usuario = input("Digite o horário atual (HH:MM): ")

Isso faz o interpretador reconhecer corretamente o bloco condicional e a chamada da função, evitando o SyntaxError.

Alguns materiais podem estar em inglês, mas é possível compreendê-los usando o recurso de tradução de páginas do próprio navegador.

O que você acha de usar a função datetime para representar os horários, em vez de convertê-los manualmente para minutos?

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

Abraço e bons estudos!

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