Cyber Monday

ATÉ 40% OFF

TÁ ACABANDO!

0 dias

0 horas

0 min

0 seg

1
resposta

[Projeto] Simulador de pedidos de uma cafeteria

O sistema deve permitir que o atendente registre os pedidos de cada cliente, calcule o valor total e aplique um desconto de 10% para clientes cadastrados.

O processo deve funcionar da seguinte forma:

O atendente informa quantos itens o cliente vai pedir.
Para cada item, o sistema solicita o nome e o preço.
Ao final, o sistema pergunta se o cliente é cadastrado.
Se for, aplica o desconto e exibe o valor com desconto.
Caso contrário, exibe o valor cheio.

quantidade_itens = int(input('Informe a quantidade de itens: '))
contador = 0
itens = {}

while contador < quantidade_itens:
    nome_item = input('Informe o nome do item: ')
    preco_item = float(input('Informe o preço do item: '))
    
    itens[nome_item] = preco_item
    
    contador += 1

cliente_cadastrado = input('O cliente é cadastrado, sim ou não? ')
total = sum(itens.values())

if cliente_cadastrado == 'sim':
    total_descontado = total - (total * 0.10)
else:
    print(f'Total: R$ {total:.2f}')

for chave, valor in itens.items():
    print(f'Item: {chave} | Preço: {valor}')
    
print(f'Total com desconto de 10%: R$ {total_descontado:.2f} ')
1 resposta

Olá, Sara, como vai?

Lendo o seu código, dá para ver que a lógica principal está bem encaminhada e cumpre o fluxo pedido no desafio. Há apenas um ponto importante a ajustar para evitar comportamento inesperado quando o cliente não for cadastrado, pois a variável total_descontado só é criada dentro do bloco do cliente cadastrado, mas mesmo assim é utilizada depois, o que pode gerar erro.

Um ajuste seria imprimir o total com desconto apenas quando a condição for verdadeira e, caso contrário, não tentar acessar essa variável.

Parabéns pelo trabalho e obrigado por compartilhar seu código. O fórum está à disposição sempre que quiser continuar evoluindo e trocando ideias.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!