1
resposta

Calculando pedágio

Fernanda está planejando uma viagem e quer calcular quanto pagará de pedágio. O valor do pedágio depende da distância percorrida:

  • Até 100 km: R$ 10,00
  • Entre 100 km e 200 km: R$ 20,00
  • Acima de 200 km: R$ 30,00

Crie um programa que receba a distância percorrida e informe o valor do pedágio correspondente.

distancia = float(input("Digite a distância percorrida (em km): "))

if distancia <= 100:
    print("Valor do pedágio: R$ 10,00")
elif 100 < distancia <= 200:
    print("Valor do pedágio: R$ 20,00")
else:
    print("Valor do pedágio: R$ 30,00")

Digite a distância percorrida (em km): 356
Valor do pedágio: R$ 30,00
1 resposta

Olá, Andressa. Como vai?

Parabéns pela resolução! O seu código está muito bem escrito e a lógica das condicionais if, elif e else foi aplicada de forma precisa para resolver o problema da Fernanda.

Um ponto muito positivo no seu código é o uso da sintaxe simplificada do Python no elif: 100 < distancia <= 200. Em muitas outras linguagens, você precisaria obrigatoriamente usar um operador lógico como distancia > 100 and distancia <= 200, mas o Python permite essa escrita matemática mais direta, o que torna o código mais legível.

Para agregar ainda mais valor ao seu estudo, aqui estão algumas sugestões de boas práticas que você pode aplicar em projetos futuros:

  • Evite valores "mágicos" (Hardcoding): Em sistemas maiores, os preços dos pedágios podem mudar. Uma boa prática é guardar esses valores em variáveis no início do código. Assim, se o preço subir, você altera em um só lugar.
  • Refinamento do limite: Note que se a distância for exatamente 100, o seu código entra no primeiro if (correto). Se for 100.1, ele já pula para o elif. Sua lógica de intervalos está matematicamente perfeita.

Veja como o código ficaria seguindo essa ideia de organização:

distancia = float(input("Digite a distância percorrida (em km): "))

# Definindo os preços como variáveis (facilita a manutenção)
PRECO_CURTO = 10.00
PRECO_MEDIO = 20.00
PRECO_LONGO = 30.00

if distancia <= 100:
    valor = PRECO_CURTO
elif 100 < distancia <= 200:
    valor = PRECO_MEDIO
else:
    valor = PRECO_LONGO

print(f"Valor do pedágio: R$ {valor:.2f}")
  • Por que usar o f-string com :.2f?
    Como estamos lidando com dinheiro, essa formatação garante que o Python sempre exiba duas casas decimais (ex: 10.00 em vez de 10.0), deixando a interface para o usuário muito mais profissional.

Continue com esse foco nas condicionais, pois elas são a base da tomada de decisão em qualquer software!

Espero que possa ter lhe ajudado!