1
resposta

Desafio da Entrega: Não me segurei e fiz direto em Python pra praticar a lógica de programação.

Fala pessoal! Nos desafios anteriores eu comentei que tava me segurando pra não escrever o código real, mas nesse aqui eu não aguentei kk.

Primeiro pensei desta maneira:

  • Print com informação falando do Sistema de Cálculo de Entrega
  • entrada com a pessoa colocando a distancia, e outra entrada para pessoal digitar se está chovendo ou não.
  • 2 condição com IF para checar a distancia, e se caso a pessoa digitra sim em "está chovendo", dai vai add mais 2 reais na conta.
  • E no final, mostra o valor final.

Sou iniciante ainda (5 meses de estudos), mas pensar assim antes de aplicar na pratica em python, me ajuda bastante!!!

Na prática, para transformar isso em código real, percebi que precisaria de duas etapas de validação separadas: uma pra distância (usando If/Elif/Else) e uma independente pra chuva, que apenas soma um valor na taxa base.

Aqui está como ficou a minha solução em Python:

// python
print('Bem-vindo ao sistema de cálculo de entrega!')

# ENTRADA
distancia = float(input('Digite a distância até o cliente (em km): '))
chuva = input('Está chovendo? (sim/não): ').strip().lower()

# PROCESSAMENTO 1: Valida a distância
if distancia <= 5:
    taxa = 5.00
elif distancia <= 10:
    taxa = 8.00
else:
    taxa = 10.00

# PROCESSAMENTO 2: Valida a chuva de forma independente
if chuva == 'sim':
    taxa += 2.00

# SAÍDA
print(f'O valor final da entrega é R$ {taxa:.2f}')

Pra garantir que não daria erro se o usuário digitasse "SIM" em maiúsculo, usei o .strip().lower() no input. E pra grana sair bonitinha com as casas decimais (tipo R$ 7.00), usei a formatação :.2f no print.

Bons estudos pra todo mundo!

1 resposta

Oii, André!

Parabéns por dar esse passo e transformar a lógica natural em código real. É muito empolgante quando os estudos de meses começam a se materializar em programas que funcionam exatamente como planejamos.

Sua resolução demonstra um domínio excelente sobre a decomposição e a independência de processos. Ao separar o cálculo da distância (regra base) da verificação da chuva (regra condicional), você evitou criar um código confuso e cheio de repetições. Essa é uma das melhores práticas na programação: tratar cada fator de influência de forma modular.

Para elevar ainda mais o nível do seu código, vale notar um detalhe sobre a validade dos dados: como você está usando float para a distância, o programa pode quebrar se alguém digitar uma letra por engano. No futuro, você pode explorar o uso de blocos try/except para lidar com esses casos sem que o sistema feche. Além disso, você pode conferir mais sobre como estruturar essas decisões no guia sobre estruturas condicionais em Python.

Conseguiu perceber como a organização que você fez antes de codar facilitou a identificação de que a chuva era um evento à parte e não precisava estar "dentro" de cada if da distância?

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!