1
resposta

[Projeto] Desafio: Simulador de pedidos em uma cafeteria

Algoritmo em linguagem natural

Início

Definir a variável total com valor 0

Solicitar ao atendente a quantidade de itens do pedido

Para cada item do pedido:

    Solicitar o nome do item

    Solicitar o preço do item

    Adicionar o preço do item ao total

Perguntar se o cliente é cadastrado
(Resposta: SIM ou NÃO)

Se o cliente for cadastrado:

    calcular desconto = total × 10%

    calcular valorFinal = total - desconto

    Exibir:
    "Valor total com desconto:"

    Exibir valorFinal

Senão:

    Exibir:
    "Valor total da compra:"

    Exibir total

Fim
1 resposta

Olá, Paola. Como vai?

Parabéns pela excelente estruturação do seu algoritmo! Escrever a lógica em linguagem natural (também conhecido como pseudocódigo) antes de partir para a codificação em alguma linguagem de programação é uma das melhores práticas do Pensamento Computacional.

O seu fluxo está muito bem desenhado: você definiu corretamente a inicialização da variável acumuladora (total), utilizou uma estrutura de repetição para os itens (Para cada item) e aplicou com perfeição as estruturas de condição (Se / Senão) para o cálculo do desconto de 10%.

Para agregar ainda mais valor à sua linha de raciocínio e ajudá-la a visualizar esse processo como uma verdadeira desenvolvedora, trago duas sugestões de refinamento para o seu algoritmo:


1. Tratamento de Quantidades por Item

No seu modelo atual, o laço de repetição solicita o preço de cada item individualmente. Isso funciona perfeitamente se o cliente pedir coisas diferentes. Mas imagine que alguém peça 5 Cafés Expressos. Do jeito que está estruturado, o atendente precisará digitar o nome "Café Expresso" e o preço 5 vezes seguidas.

Uma boa prática para otimizar o algoritmo é incluir a quantidade do mesmo item dentro do loop e multiplicar pelo preço antes de somar ao total. Veja como o trecho ficaria refinado:

Para cada item do pedido:
    Solicitar o nome do item
    Solicitar o preço unitário do item
    Solicitar a quantidade deste item
    Calcular subtotalItem = preço unitário × quantidade
    Adicionar subtotalItem ao total

2. Validando a Resposta do Cliente (Garantia de Funcionamento)

Quando o algoritmo diz Perguntar se o cliente é cadastrado(Resposta: SIM ou NÃO), você está esperando exatamente essas palavras. Porém, na vida real, o usuário pode digitar "sim" com letras minúsculas, "S", "Simm" ou até mesmo errar a digitação.

Nos algoritmos reais, costumamos adicionar um passo de padronização ou validação para garantir que o sistema não ignore o desconto caso a pessoa digite de forma diferente. No pseudocódigo, você pode representar isso assim:

Se o cliente for cadastrado (Resposta for igual a "SIM" ou "S", independente de maiúscula ou minúscula):

Esses pequenos detalhes de usabilidade e performance transformam um algoritmo simples em um software robusto e preparado para o mercado. Você tem uma ótima base de lógica, continue praticando!

Espero que possa ter lhe ajudado!