Olá, Lavinia. Como vai?
Excelente iniciativa ao trazer o exemplo de como uma lógica de estudante se transforma em um sistema profissional! Seu código base está impecável, especialmente pelo uso do .strip().lower(), que é uma boa prática essencial para evitar que espaços extras ou letras maiúsculas quebrem a validação do seu programa.
Você tocou em um ponto fundamental do pensamento computacional: a abstração. No seu exemplo de "sistema real", você utilizou o que chamamos de chamadas de funções (carteirinha_valida e aplicar_desconto), o que torna o código muito mais organizado e fácil de manter.
Para agregar valor à sua reflexão sobre sistemas reais, veja como poderíamos estruturar essa lógica de validação de forma um pouco mais robusta, simulando essa verificação de código que você mencionou na imagem:
# Lista de códigos válidos (simulando um banco de dados)
codigos_validos = ["UNI-2024-00123", "USP-2025-88741", "FATEC-2024-55390"]
idade = int(input("Digite a idade: "))
eh_estudante = input("É estudante? (Sim/Não): ").strip().lower() == "sim"
if eh_estudante:
codigo = input("Digite o código da carteirinha: ").strip().upper()
# Verificamos se o código existe na nossa lista de válidos
carteirinha_ok = codigo in codigos_validos
else:
carteirinha_ok = False
# Lógica final de decisão
if idade < 18 or carteirinha_ok:
print("Desconto aplicado: Meia-entrada liberada!")
else:
print("Ingresso Integral: Critérios de desconto não atingidos.")
- Operadores Lógicos: O uso do
or é perfeito aqui, pois se apenas uma das condições for verdadeira (ser menor de idade ou ter a carteirinha válida), o benefício já é concedido. - UX (Experiência do Usuário): Note que no código acima, só pedimos o código da carteirinha se a pessoa marcar "Sim" no campo de estudante, exatamente como no layout do sistema CineMax que você compartilhou.
Essa transição da lógica simples para a lógica condicional aninhada é o que permite construir aplicações seguras e inteligentes. Parabéns por enxergar além do exercício e pensar na aplicação prática do mercado!
Espero que possa ter lhe ajudado!