Neste desafio, o objetivo é criar um algoritmo que registre os itens pedidos, some os valores e aplique 10% de desconto quando o cliente estiver cadastrado.
1. Dados de Entrada
O sistema precisa receber:
- Quantidade de itens do pedido.
- Nome de cada item.
- Preço de cada item.
- Informação se o cliente é cadastrado (Sim ou Não).
Exemplo
Quantidade de itens: 3
| Item | Preço |
|---|---|
| Café Expresso | R$ 8,00 |
| Pão de Queijo | R$ 6,00 |
| Capuccino | R$ 12,00 |
Cliente cadastrado: Sim
2. Lógica do Processo
O sistema deve:
- Perguntar quantos itens serão registrados.
- Criar uma variável total iniciando em 0.
- Repetir o processo para cada item:
- Receber o nome.
- Receber o preço.
- Somar o preço ao total.
- Perguntar se o cliente é cadastrado.
- Se for cadastrado:
- Calcular desconto de 10%.
- Subtrair o desconto do total.
- Exibir o valor final do pedido.
3. Regra de Negócio
Se:
- Cliente cadastrado → aplicar desconto de 10%.
- Cliente não cadastrado → manter valor integral.
4. Algoritmo em Linguagem Natural
- Receber a quantidade de itens do pedido.
- Inicializar a variável total com zero.
- Para cada item:
- Solicitar o nome do produto.
- Solicitar o preço.
- Adicionar o preço ao total.
- Perguntar se o cliente é cadastrado.
- Se a resposta for “Sim”:
- Calcular desconto de 10%.
- Atualizar o valor final.
- Caso contrário:
- Manter o total sem alterações.
- Exibir o valor total do pedido.
- Encerrar o algoritmo.
5. Exemplo de Execução
Pedido
- Café Expresso → R$ 8,00
- Pão de Queijo → R$ 6,00
- Capuccino → R$ 12,00
Cálculo
Total = 8 + 6 + 12 = R$ 26,00
Cliente cadastrado → desconto de 10%
Desconto = R$ 2,60
Resultado Final
Valor final = R$ 23,40
6. Pseudocódigo
ler quantidade_itens
total ← 0
para i de 1 até quantidade_itens faça
ler nome_item
ler preco_item
total ← total + preco_item
fim para
ler cliente_cadastrado
se cliente_cadastrado = "Sim" então
desconto ← total * 0.10
total_final ← total - desconto
senão
total_final ← total
fim se
escrever "Total do pedido: R$ ", total_final
7. Código em Python
# Entrada
quantidade_itens = int(input("Quantos itens serão pedidos? "))
total = 0
# Registro dos itens
for i in range(quantidade_itens):
nome = input(f"Nome do item {i+1}: ")
preco = float(
input(f"Preço do {nome}: R$ ")
)
total += preco
# Cliente cadastrado
cliente = input(
"Cliente cadastrado? (Sim/Não): "
).strip().lower()
# Aplicação do desconto
if cliente == "sim":
desconto = total * 0.10
total_final = total - desconto
else:
total_final = total
# Resultado
print(f"\nValor total do pedido: R$ {total_final:.2f}")
8. Benefícios da Solução
- Automatiza o atendimento no balcão.
- Reduz erros de cálculo.
- Aplica descontos automaticamente.
- Facilita futuras expansões (cupom, taxa de entrega, fidelidade).
- Melhora a experiência do cliente.
Conclusão
Esse algoritmo simula o processo de atendimento de uma cafeteria de forma organizada e eficiente. Utilizando estruturas de repetição, variáveis e condições, o sistema registra pedidos, calcula valores automaticamente e aplica descontos quando necessário, aproximando o exercício de uma situação real de atendimento.