Olá, Esdras. Como vai?
Parabéns pela resolução do exercício! O seu código está muito bem estruturado e utiliza corretamente a lógica de condicionais encadeadas para resolver o problema proposto.
O uso do if, elif e else é fundamental na programação para o controle de fluxo, permitindo que o computador tome decisões baseadas em diferentes cenários. No seu exemplo, você garantiu que cada faixa de distância receba o valor correto de cobrança.
Para agregar ainda mais valor ao seu código e trazer algumas boas práticas de Python, deixo aqui duas sugestões interessantes:
1. Formatação de Saída (F-strings):
Em Python, uma forma elegante e moderna de exibir valores (especialmente monetários) é utilizando as f-strings. Com elas, você consegue formatar números para que sempre apareçam com duas casas decimais, o que é ideal para representar dinheiro:
valor_pedagio = 10.00
print(f"Valor do pedágio: R${valor_pedagio:.2f}")
2. Evitando Repetições (Princípio DRY - Don't Repeat Yourself):
No seu código original, você repete o comando print em todas as condições. Uma boa prática é utilizar as condicionais apenas para definir o valor da variável e deixar a exibição para o final. Isso facilita se, no futuro, você quiser mudar a frase de "Valor do pedágio" para "Total a pagar", pois precisará alterar em apenas um lugar:
distancia = float(input('Digite a distância percorrida (km): '))
if distancia <= 100:
valor = 10.0
elif distancia <= 200:
valor = 20.0
else:
valor = 30.0
print(f"Valor do pedágio: R${valor:.2f}")
Dica técnica: Lembre-se sempre de que o Python avalia as condições de cima para baixo. Como você usou corretamente o elif, se a distância for 50, o programa entra no primeiro if e ignora os demais, o que torna o processamento eficiente.
Continue com o ótimo desempenho nos exercícios!
Espero que possa ter lhe ajudado!