1
resposta

Desafio: Calculando valor da entrega

A variável 'distancia' recebe a informação de quantos km é a entrega
A variável 'chuva' recebe a informação se está chovendo ou não (TRUE ou FALSE)
A variável 'valor_total' recebe o valor 0

Se a variável 'distancia' for menor que 5:
valor_total = 5
Se a variável 'distancia' for maior que 5 E menor que 10:
valor_total = 8
Se a variável 'distancia' for maior que 10:
valor_total = 10

Se chuva:
valor_total = valor_total + 2

Exibe a mensagem: 'O valor total do pedido é', + valor_total

1 resposta

Oii, Tiago! Tudo bem?

Muito boa a sua resolução! A lógica de calcular o valor base primeiro e depois somar o adicional de chuva está excelente. Isso deixa o código organizado e fácil de manter.

Tenho apenas um ponto de atenção para deixar seu algoritmo à prova de falhas: os limites dos números (as fronteiras).

Vamos fazer um "teste de mesa" rápido com o seu código atual. O que aconteceria se a entrega fosse de exatamente 5 km?

  1. É menor que 5? Não (5 não é menor que 5, é igual).
  2. É maior que 5 E menor que 10? Não.
  3. É maior que 10? Não.

Nesse caso, o valor_total continuaria sendo 0 (ou 2, se estivesse chovendo). O mesmo aconteceria com o número 10.

Como ajustar?
Para cobrir esses "buracos", precisamos incluir o 5 e o 10 em alguma das condições usando "menor ou igual" (<=**) ou "maior ou igual" (**>=).

Considerando a regra "até 5 km", o ajuste ficaria assim:

  • Se a variável 'distancia' for menor ou igual a 5:
  • Se a variável 'distancia' for maior que 5 E menor ou igual a 10:

Fazendo esse pequeno ajuste nos operadores, seu algoritmo cobrirá todas as distâncias possíveis.

Continue praticando, você está no caminho certo!

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