Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Calculando valor da entrega [exercicio]

  • Entrada
  1. Pedir o usuário para informar o endereço.
  • Processamento
  1. Calcular distância entre a loja e local de entrega.
  2. Se distância menor ou igual a 5km, cobrar 5R$.
  3. Se distância maior que 5km e menor ou igual a 10km, cobrar 8R$.
  4. Se distância maior que 10km, cobrar 10 reais.
  5. Checar o clima/tempo. Se chover, acréscimo de 2 reais.
  • Saida
  1. Informar valor.
  2. Perguntar forma de pagamento.
  3. Informa tempo estimado de entrega.
  4. Informar acompanhamento do entregador.
  5. Entregar e confirmar entrega.
1 resposta
solução!

Olá, Nathã. Como vai?

Seu algoritmo para o desafio de cálculo do valor de entrega ficou excelente! Você estruturou perfeitamente as três fases essenciais de qualquer programa de computador: a Entrada de dados, o Processamento (onde a lógica e as regras de negócio acontecem) e a Saída (onde o resultado é entregue ao usuário).

Para enriquecer ainda mais o seu aprendizado em lógica de programação e pensamento computacional, quero destacar duas ótimas práticas que você aplicou e dar uma sugestão de refinamento técnico nas suas condições:

1. Excelente uso de Variáveis Independentes (Acréscimo da chuva)
A sua lógica para checar o clima foi muito bem pensada. Em programação, o acréscimo da chuva funciona como uma variável cumulativa. Em vez de criar regras de distância separadas para "com chuva" e "sem chuva" (o que duplicaria o tamanho do seu código), você calculou a taxa base por distância e depois apenas somou o acréscimo se a condição tempo == "chovendo" for verdadeira. Isso é o pilar da Abstração!

2. Refinamento das Condições Lógicas (Pseudocódigo)
Na fase de processamento, você escreveu: Se distância maior que 5km e menor ou igual a 10km.
Do ponto de vista da lógica pura, está corretíssimo. Mas, ao traduzirmos isso para o código estruturado, podemos simplificar. Como o programa lê as instruções de cima para baixo, se a distância for maior que 5km, ela automaticamente já passou pelo primeiro filtro.

Veja como essa estrutura de decisão (conhecida como Se / Senão Se ou if / else if) ficaria de forma mais limpa em pseudocódigo:

Se distancia <= 5:
    taxa_entrega = 5
Senão Se distancia <= 10:
    taxa_entrega = 8
Senão:
    taxa_entrega = 10

Se clima == "chovendo":
    taxa_entrega = taxa_entrega + 2

3. O que adicionar na Saída para ficar ainda mais robusto?
Na sua saída, você colocou passos ótimos como informar o tempo estimado e o acompanhamento do entregador. Uma boa prática de algoritmo de sistemas de delivery (como iFood ou Uber Eats) é calcular o tempo estimado com base na mesma distância e no clima que você checou no processamento. Por exemplo: se estiver chovendo, além do acréscimo de 2 reais, o algoritmo também poderia somar mais 10 minutos no tempo estimado de entrega por segurança.

Parabéns pela excelente linha de raciocínio no desenvolvimento do desafio! Você mapeou todas as etapas necessárias de forma muito clara.

Espero que possa ter lhe ajudado!