1
resposta

[Dúvida] Exercício 12

Como eu faço meu código parar de rodar se o usuário escolher um combustível diferente de etanol e diesel?

combustivel = input("Gostaria de abastecer com etanol ou diesel? ")
combustivel = combustivel.lower()

litros = float(input("Quantos litros gostaria de abastecer? "))

if combustivel == "etanol":
  combustivel = "E"
  preco = 1.70
  if litros > 15:
    desconto = 4
  else:
    desconto = 2
if combustivel == "diesel":
  combustivel = "D"
  preco = 2
  if litros > 15:
    desconto = 5
  else:
    desconto = 3

valor_desconto = litros*preco*desconto/100

valor_pago = litros*preco - valor_desconto

print(f"Você abasteceu {litros} litros de {combustivel} e pagou R${valor_pago} reais")
1 resposta

Olá, Meire! Como vai?

Muito interessante você ter essa curiosidade! É super importante que os nossos programas tenham tratamentos de erro - algo como uma forma "elegante" de evitar que um erro aconteça para o usuário, que não vai entender todos aqueles códigos coloridos.

Para isso, é importante prever possíveis comportamentos, como o que você comentou.

Para verificar se a entrada do usuário é diferente de "etanol" ou "diesel", você pode usar uma estrutura condicional if antes do restante do código. Assim, caso a entrada seja diferente, uma mensagem é exibida na tela. Caso seja uma opção válida, o programa continua a execução.

Algo assim:

combustivel = input("Gostaria de abastecer com etanol ou diesel? ")
combustivel = combustivel.lower()

if combustivel != "etanol" and combustivel != "diesel":
    print("Opção de combustível inválida. Por favor, escolha entre etanol ou diesel.")
else:
    litros = float(input("Quantos litros gostaria de abastecer? "))

    if combustivel == "etanol":
        combustivel = "E"
        preco = 1.70
        if litros > 15:
            desconto = 4
        else:
            desconto = 2
    elif combustivel == "diesel":
        combustivel = "D"
        preco = 2
        if litros > 15:
            desconto = 5
        else:
            desconto = 3

    valor_desconto = litros * preco * desconto / 100
    valor_pago = litros * preco - valor_desconto

    print(f"Você abasteceu {litros} litros de {combustivel} e pagou R${valor_pago} reais")

Espero ter contribuído, Meire!

Forte abraço.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!