Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Desafio: Simulador de pedidos em uma cafeteria

Inicializa o valor total

total = 0

Pergunta quantos itens o cliente vai pedir

quantidade_itens = int(input("Quantos itens o cliente vai pedir? "))

Laço para cadastrar os itens

for i in range(quantidade_itens):
nome = input(f"Digite o nome do item {i + 1}: ")
preco = float(input(f"Digite o preço do item {i + 1}: R$ "))

total += preco

Pergunta se o cliente é cadastrado

cliente_cadastrado = input("O cliente é cadastrado? (s/n): ").lower()

Define desconto

desconto = 0.10 # 10%

Verifica se aplica desconto

if cliente_cadastrado == "s":
valor_final = total - (total * desconto)
print(f"\nValor total com desconto: R$ {valor_final:.2f}")
else:
print(f"\nValor total sem desconto: R$ {total:.2f}")

2 respostas
solução!

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:

  1. Entrada de dados: Perguntar a quantidade, os itens e se há cadastro.
  2. Processamento: Somar os preços dentro de um laço de repetição e aplicar a condição do desconto.
  3. 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!

Eita professor realmente faltou esses caracteres ditos por vc, desatenção total!