Olá, Gustavo. Como vai?
Mais um excelente projeto! Você estruturou a lógica do desafio de cálculo de frete com muita precisão, aplicando perfeitamente os conceitos de estruturas condicionais encadeadas (Se / Senão Se / Senão) e condicionais simples.
A divisão que você fez entre Dados de Entrada, Processamento e Ação Final reflete exatamente a anatomia de um algoritmo bem construído na computação. O seu mapeamento de variáveis ficou claro e a lógica para o acréscimo da taxa de chuva funcionou perfeitamente como um bloco independente, o que é uma ótima prática de design de código.
Para agregar valor ao seu aprendizado e levar o seu algoritmo para o próximo nível, trago duas sugestões de boas práticas baseadas no que você desenvolveu:
1. Otimização de Condicionais (Redundância)
No seu segundo bloco de processamento, você escreveu: SENÃO, SE km_entrega for maior que 5 E menor ou igual a 10.
Na programação, quando o algoritmo chega no primeiro SENÃO, ele já sabe de forma implícita que a distância é maior que 5 (afinal, se fosse menor ou igual a 5, ela teria entrado na primeira condição). Portanto, você pode simplificar o código removendo o teste maior que 5 E, deixando apenas SE km_entrega <= 10. Isso deixa o processamento do seu sistema mais rápido e o código mais limpo.
2. Tradução para Pseudocódigo Estruturado
Para exercitar a escrita formal desses passos em uma estrutura que se aproxime das linguagens de programação, veja como o seu excelente raciocínio pode ser escrito em formato de pseudocódigo:
Algoritmo CalculoEntrega
Início
// Declaração das variáveis
Definir km_entrega Como Real
Definir chuva Como Logico
Definir taxa_final Como Real
// Entrada de dados
Escreva("Digite a distância da entrega em km:")
Leia(km_entrega)
Escreva("Está chovendo no momento? (Verdadeiro/Falso):")
Leia(chuva)
// Processamento da Taxa Base por Distância
Se km_entrega <= 5 Então
taxa_final <- 5.00
Senão Se km_entrega <= 10 Então
taxa_final <- 8.00
Senão
taxa_final <- 10.00
FimSe
// Processamento Extra (Condição de Chuva)
Se chuva = Verdadeiro Então
taxa_final <- taxa_final + 2.00
FimSe
// Saída do resultado (Output)
Escreva("O valor final da sua entrega é: R$ ", taxa_final)
Fim
Note como a estrutura lógica criada por você resolve o problema de ponta a ponta sem brechas para erros de cálculo. Parabéns pelo empenho e pela qualidade na entrega dos seus desafios de Pensamento Computacional!
Espero que possa ter lhe ajudado!