Olá Matheu,
Tudo bem?
Acredito que o professor tenha usado o elif
apenas para fins de explicação. No caso desse exercício, só há duas possíveis alternativas: ou o número é maior ou ele é menor (já que se ele for igual, ele acertou.
Uma outra forma de escrever esse código seria como abaixo:
if(acertou):
print("Parabéns! Você acertou!")
elif(maior):
print("O seu chute foi maior do que o número secreto!")
#elif(menor):
else:
print("O seu chute foi menor do que o número secreto!")
print("Fim do jogo")
Deixei o elif(menor)
comentado para mostrar que ele poderia ser utilizado também. Mas essa lógica tem um problema: imagina que eu quero ajustar alguma coisa quando o usuário erra. Logo, eu teria que repetir o código, o que não é muito bom. Logo, vou fazer uma mudança aqui para mostrar como podemos fazer isso. Imagine que você queira mostrar uma mensagem dizendo que ele errou antes de dar a dica se é menor ou maior.
if(acertou):
print("Parabéns! Você acertou!")
else:
print("Você errou!")
if(maior):
print("O seu chute foi maior do que o número secreto!")
else:
print("O seu chute foi menor do que o número secreto!")
print("Fim do jogo")
Outra possível melhoria seria não fazer o print dependendo especificamente do chute ser maior ou menor, mas controlar isso de forma mais "simples":
if(acertou):
print("Parabéns! Você acertou!")
else:
print("Você errou!")
msg_chute_erro = "menor"
if(maior):
msg_chute_erro = "maior"
print(f"O seu chute foi {msg_chute_erro} do que o número secreto!")
print("Fim do jogo")
Desse jeito, eu crio uma variável que começa com o texto "menor", e muda para "maior", caso o chute tenha sido maior. E sempre imprime a mensagem usado essa variável.
Um ponto notar é que usei a nova notação do Python 3 para formatação, que é o equivalente a:
print("O seu chute foi {} do que o número secreto!".format(msg_chute_erro))
Espero que a explicação tenha ajudado. Se ela sanou sua dúvida, não se esqueça de marcar a resposta como solução.
Cussa