Olá, Jeandson! Que bom te ver evoluindo tão rápido e já encarando os desafios de lógica!
Montar um simulador de pedidos de cafeteria é um exercício clássico e fantástico. Como você vem da área administrativa, com certeza já percebeu que esse algoritmo é a base exata de como os sistemas de frente de caixa (PDV) calculam uma nota fiscal ou um pedido no mundo real.
O seu raciocínio lógico está absolutamente correto! Você estruturou muito bem as três etapas fundamentais do pensamento computacional:
- Entrada de dados: Perguntar a quantidade, os itens e se há cadastro.
- Processamento: Somar os preços dentro de um laço de repetição e aplicar a condição do desconto.
- Saída: Mostrar o valor final formatado.
Ao tentar rodar esse código, o Python vai apontar alguns pequenos erros de sintaxe (pequenos detalhes de escrita) que vão travar a execução. Vamos analisar juntos onde estão esses pontos para você corrigir o seu script?
Os Pequenos Detalhes de Sintaxe
Na programação, o computador é muito rígido com parênteses, aspas e variáveis. Veja o que faltou ajustar no seu código:
- Parênteses esquecidos no
input: Na linha da quantidade_itens e do preco, faltou abrir o parêntese logo após a palavra input. O correto é input(...). - A variável do laço
for: Na linha do for in range, faltou dar um nome para a variável que vai contar as voltas. Como você usou {i + 1} logo abaixo, a variável do seu for precisa ser o i. O correto é for i in range(...). - Faltou aspas na comparação do
if: No trecho if cliente_cadastrado == s:, o Python vai procurar por uma variável chamada s e não vai encontrar. Como você quer saber se o texto digitado foi a letra s, ela precisa estar entre aspas: "s". - Arredondamento no
else: No último print, você digitou {total:.2} (faltou a letra f de float). Sem o f, o Python pode exibir o número em formato científico em vez de duas casas decimais. O correto é {total:.2f}.
Para visualizar como o computador processa essa tomada de decisão que você criou com o desconto, o fluxo lógico funciona exatamente assim:
O Código Corrigido e Pronto para Rodar
Aplicando esses pequenos ajustes mantendo a sua lógica original, o seu simulador de cafeteria fica assim:
total = 0
# Ajustado: Adicionado o parêntese após o input
quantidade_itens = int(input("Quantos itens o cliente vai pedir? "))
# Ajustado: Adicionado o 'i' para controlar o laço for
for i in range(quantidade_itens):
nome = input(f"Digite o nome do item {i + 1}: ")
# Ajustado: Adicionado o parêntese após o input
preco = float(input(f"Digite o preço do item {i + 1}: R$ "))
total += preco
cliente_cadastrado = input("O cliente é cadastrado? (s/n): ").lower()
desconto = 0.10 # 10%
# Ajustado: Adicionado aspas em "s"
if cliente_cadastrado == "s":
valor_final = total - (total * desconto)
print(f"\nValor total com desconto: R$ {valor_final:.2f}")
else:
# Ajustado: Adicionado o 'f' após o .2
print(f"\nValor total sem desconto: R$ {total:.2f}")
Uma dica de ouro de Pensamento Computacional:
Repare como você usou o .lower() no input do cliente cadastrado. Isso foi uma excelente prática de programação! Se o usuário digitar o "S" maiúsculo, o seu programa converte para minúsculo e aceita o desconto do mesmo jeito, evitando que o sistema quebre por bobeira.
Você estruturou um algoritmo completo e funcional de nível comercial. Ajuste esses parênteses e aspas no seu editor e veja a mágica acontecer na tela!
Parabéns pelo progresso constante. Se surgir qualquer dúvida nessa correção, manda aqui!
Espero que possa ter lhe ajudado!