1
resposta

[Projeto] Desafio: Calculando valor da entrega

Você está desenvolvendo um sistema para uma empresa de delivery. O valor da taxa de entrega depende da distância até o cliente e se o pedido foi feito em um dia de chuva.
As regras são:
Para entregas até 5 km, a taxa é R$ 5,00.
Entre 5 e 10 km, a taxa é R$ 8,00.
Acima de 10 km, a taxa é R$ 10,00.
Se estiver chovendo, acrescenta R$ 2,00 à taxa padrão.
O desafio desta atividade é criar um algoritmo em linguagem natural que informe o valor final da entrega

INÍCIO :

distância = LER (distância)
tempo = LER chovendo (Sim ou Não)

taxa5km = 5
taxa5a10km = 8
taxamaior10km - 10
taxa_de_chuva = 2
valor_entrega = 0

SE distância =< 5km e chovendo
valor_entrega = taxa5km + taxa_de_chuva
SENÃO
valor_entrega = taxa5km

SE distância > 5km ou distância <=10 km e chovendo
valor_entrega = taxa5a10km + taxa_de_chuva
SENÃO
valor_entrega = taxa5a10km

SE distância > 10km e chovendo
valor_entrega = taxamaior10km + taxa_de_chuva
SENÃO
valor_entrega = taxamaior10km

FIM SE

RETORNAR valor_entrega

FIM

1 resposta

Oi, Dannyel, como vai?

Sua lógica seguiu corretamente a ideia da atividade e você conseguiu separar os cenários de distância e condição de chuva de forma coerente. A definição das variáveis de taxa também ajudou a deixar o algoritmo mais legível.

Existe apenas um detalhe importante nas condições do intervalo entre 5 km e 10 km. Neste trecho:

SE distância > 5km ou distância <=10 km e chovendo

O operador ou pode gerar resultados diferentes do esperado, porque praticamente qualquer valor menor ou igual a 10 atenderia parte da condição. Nesse caso, o ideal seria utilizar e para representar corretamente o intervalo:

SE distância > 5km e distância <=10 km e chovendo

Outro detalhe é esta linha:

taxamaior10km - 10

O correto seria usar = para atribuição:

taxamaior10km = 10

Sua solução demonstrou um bom entendimento sobre condicionais e construção de algoritmos em linguagem natural, principalmente ao dividir os cenários de decisão.

Pensando em evolução do algoritmo, como você organizaria essa lógica para incluir taxas diferentes dependendo do horário da entrega?

Parabéns pela atividade e obrigado por compartilhar sua resolução no fórum. Continue praticando lógica de programação e refinando seus algoritmos, o fórum segue à disposição para apoiar seu aprendizado.

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