Simulador de pedidos em uma cafeteria
O que pensei como solução:
O sistema possui um cardápio previamente cadastrado, contendo o nome de cada item disponível na cafeteria e seu respectivo preço unitário.
Quando um novo atendimento é iniciado, o atendente começa a registrar o pedido do cliente. Para cada item solicitado, o atendente informa o nome do produto, e o sistema consulta automaticamente o preço correspondente no cardápio cadastrado. Esse valor é somado ao total do pedido.
Após o registro de cada item, o sistema pergunta ao atendente se deseja adicionar outro item ao pedido. Enquanto a resposta for positiva, o processo de registro de itens continua e o valor total do pedido é atualizado automaticamente.
Quando o atendente informa que não há mais itens a serem adicionados, o sistema pergunta se o cliente é cadastrado na cafeteria. Caso o cliente seja cadastrado, o sistema aplica um desconto de 10% sobre o valor total do pedido e calcula o valor final com desconto.
Por fim, o sistema exibe o valor final do pedido. Se o cliente for cadastrado, o valor exibido será o valor com desconto. Caso contrário, o sistema exibirá o valor total sem desconto, encerrando o atendimento.
Início
total ← 0
adicionarItem ← "S"
// Cardápio previamente cadastrado
// Exemplo:
// Café → 5.00
// Pão de queijo → 4.50
// Suco → 6.00
Enquanto adicionarItem = "S" faça
Escreva("Informe o nome do item:")
Leia(nomeItem)
// Buscar preço do item no cardápio
precoItem ← BuscarPrecoNoCardapio(nomeItem)
total ← total + precoItem
Escreva("Deseja adicionar outro item? (S/N)")
Leia(adicionarItem)
FimEnquanto
Escreva("O cliente é cadastrado? (S/N)")
Leia(clienteCadastrado)
Se clienteCadastrado = "S" então
desconto ← total * 0.10
totalFinal ← total - desconto
Escreva("Valor final com desconto: R$", totalFinal)
Senão
Escreva("Valor final sem desconto: R$", total)
FimSe
Fim
- A função BuscarPrecoNoCardapio(nomeItem) representa uma consulta a dados previamente cadastrados.
- Não é necessário implementar essa função agora — conceitualmente ela já resolve o problema.