1
resposta

[Projeto] Desafio: Calculando valor da entrega

condicoes_climaticas = (limpo, chuva, neblina, tempestade)

imprime('Bem vindo ao simulador de frete! ')

distancia = le('Qual a distancia do frete que deseja?')
clima = le('qual e a condicao climatica da sua regiao ? digite: limpo, chuva, neblina ou tempestade')

se clima não estiver em condicoes_climaticas
entao imprime('Condição climatica não disponivel no seu local')
fim

total = 0
se clima for diferente de 'limpo'
entao total = 2

se distancia < 5
entao total += 5
se distancia >= 5 e distancia <= 10
entao total += 8
senao
entao total += 10

imprime( 'Seu frete para essa distância e condição climática e R$: ' , total)

1 resposta

Oi, Matheus, como vai?

O algoritmo cobre bem as regras do desafio e você foi além do que foi pedido ao expandir as condições climáticas para incluir neblina e tempestade, o que enriquece a solução e demonstra pensamento crítico sobre o problema.

Há um ponto que vale revisar na lógica das condições de distância. A estrutura atual usa três condicionais independentes com se, o que significa que todas elas serão avaliadas em sequência. Quando a distância é menor que 5, a primeira condição é verdadeira e soma 5 ao total, mas o terceiro bloco, o senão solto, pode ser interpretado como pertencente apenas ao segundo se, o que deixa o fluxo ambíguo. O ideal é encadear as condições com senão se, garantindo que apenas um bloco seja executado por vez, como em se distancia < 5, senão se distancia <= 10, senão.

Pensando na expansão que você fez com as condições climáticas, como você estruturaria a lógica caso neblina e tempestade tivessem taxas adicionais diferentes da chuva?

Parabéns pelo exercício e obrigado por compartilhar. O fórum está à disposição sempre que precisar.

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