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

[Sugestão] Desafio: Calculando valor da entrega

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.

armazenar dados de distância, taxa (sem a chuva; com a chuva como é fixa, declarada na classe de Valor da Entrega e a taxa totalcomo depende da distância, declarada dentro do método, em caso de chuva), e chovendo em variáveis. distancia sendo int; taxa_sem_chuva sendo int e igual a 0 (mas dependendo da regra poderia ser float ou doublecostume do Java de chamar assim), taxa_chuva sendo int e com valor fixo de 2, taxa_total sendo = taxa_sem_chuva + taxa_chuva; chovendo sendo Booleana com valor inicial False;

criar método para taxar cada limite de distancia sem a chuva em caso do usuário informar que n tem chuva, depois criar um método para exibir a taxa total;

Public void getTaxaWithoutRain(){

Se(distancia<=5){
taxa_sem_chuva += 5;
exibir("A taxa de entrega será de R$"+taxa_sem_chuva);
}
em outro caso se (distancia >= 5 & distancia <= 10) {
taxa_sem_chuva += 8;
exibir("A taxa de entrega será de R$"+taxa_sem_chuva);
}
senão {
taxa_sem_chuva +=10
exibir("A taxa de entrega será de R$"+taxa_sem_chuva);
}
}

Public void getTaxaWithRain(){
recebe os dados inseridos pelo usuário através do "this.algumobjeto", como a distância e a taxa sem a chuva;
int taxa_total = taxa_sem_chuva + taxa_chuva;
exibir("A taxa de entrega, devido a chuva será de R$"+taxa_total);
}

Posso ter complicado demais as coisas por já ter praticado isso em alguns exercícios, mas praticamente tem tudo que o algoritmo faria

1 resposta
solução!

Olii Gabriel! Tudo bem?

Sua proposta para o desafio do valor de entrega demonstra que você já assimilou como as regras de negócio se transformam em fluxos lógicos. Você conseguiu estruturar o problema separando as condições de distância do fator climático, o que é fundamental para um processamento limpo e sem erros.

Pontos fortes do que você elaborou:

  • Categorização por faixas: Você organizou as distâncias em blocos lógicos claros (até 5, entre 5 e 10, e acima de 10), o que facilita a criação de estruturas if/else if/else.
  • Variável acumuladora: Ao pensar no acréscimo da chuva como algo que "soma" à taxa padrão, você seguiu uma lógica de cálculo incremental muito comum em sistemas de checkout.
  • Clareza nas condições: A distinção entre o que é uma regra de distância (comparação numérica) e o que é uma regra de clima (comparação booleana) está muito bem definida.

Um ponto muito positivo no seu raciocínio é a ordem de execução. Primeiro, você define o "piso" do valor (a taxa base pela distância) e, somente depois, aplica os modificadores (o adicional da chuva). Isso evita que o sistema precise calcular o valor da chuva em todas as linhas da condicional de distância, tornando o algoritmo mais organizado.

Parabéns por concluir essa sequência de desafios de lógica com tanta consistência.

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