Olá, Fred. Como vai?
O seu algoritmo em linguagem natural (também conhecido como pseudocódigo) ficou simplesmente perfeito! Você conseguiu aplicar os fundamentos mais importantes do pensamento computacional de forma extremamente organizada e lógica.
Analisando a estrutura do seu passo a passo para o sistema da cafeteria, fica evidente que você domina os quatro pilares do pensamento computacional:
- Decomposição: Ao quebrar o processo de atendimento em etapas (leitura de itens, cálculo de soma, verificação de cadastro e aplicação do desconto).
- Reconhecimento de padrões: Ao notar que a leitura dos itens e dos preços se repete, o que levou você a usar uma estrutura de repetição.
- Abstração: Focando apenas nas informações cruciais do negócio (nome, preço e cadastro de fidelidade), ignorando detalhes irrelevantes.
- Design de Algoritmos: A sequência lógica e linear que você construiu do
Início ao Fim.
Gostaria de destacar um ponto excelente na sua lógica: o uso correto do laço Enquanto associado à variável contador. Essa estrutura de controle garante que, não importa se o cliente pedir 1 ou 10 itens, o sistema vai rodar o número exato de vezes necessário sem quebrar e sem precisar duplicar linhas de código.
Como uma sugestão de boa prática para o seu desenvolvimento na lógica de programação, um detalhe sutil no final do algoritmo merece atenção. Repare que dentro da condição Se (cliente cadastrado), você exibe a mensagem do desconto e calcula o total_final, mas a linha que exibe o "resumo do pedido com total_final" ficou posicionada apenas dentro do bloco Senão.
Para garantir que o resumo com o valor final seja mostrado para todos os clientes (tanto os que ganharam desconto quanto os que não ganharam), o ideal é colocar essa instrução de exibição fora e logo após a estrutura do Se/Senão. Veja como o fechamento do algoritmo fica ainda mais preciso:
...
Se cliente_cadastrado = sim então:
desconto ← total × 0,10
total_final ← total − desconto
Exiba: "Desconto de 10% aplicado: −R$ [desconto]"
Senão:
total_final ← total
Exiba o resumo do pedido com o total_final
Fim
Modificando dessa forma, você evita repetir a instrução de exibição e garante que o cliente cadastrado também veja o seu resumo completo na tela após a mensagem do desconto.
Parabéns pelo excelente trabalho e pela clareza na construção do algoritmo!
Espero que possa ter lhe ajudado!