PIZZARIA EM PYTHON (DESAFIO #1)

SITUAÇÃO PROBLEMA DA PIZZARIA

Como proprietária de uma pizzaria, tenho enfrentado problemas com pedidos incorretos e entregas inadequadas, afetando a satisfação dos clientes e a reputação do meu negócio. Para resolver isso, necessito de um programa que permita aos clientes fazerem pedidos de forma precisa e personalizada, garantindo a inclusão correta de todos os itens desejados em suas pizzas. Com essa solução, espero restaurar a confiança dos clientes e melhorar a eficiência operacional da minha pizzaria.

REQUISITOS DO PROGRAMA DA PIZZARIA

  • O programa deve ser desenvolvido em python;
  • O cardápio deve conter 5 sabores de pizza;
  • Em cada sabor de pizza será possível acrescentar 3 ingredientes;
  • Ao final do pedido perguntar qual forma de pagamento (Pix, dinheiro, cartão);
  • Quando o pedido for concluído, gerar uma nota fiscal com os detalhes do pedido.

ENTRADAS

  • Qual o sabor da pizza escolhida?
  • Quais ingredientes vai querer acrescentar?
  • Qual a forma de pagamento?

FUNÇÃO EXIBIR CARDÁPIO

				
					def exibir_cardapio():
    cardapio = {
        1: "Margherita",
        2: "Pepperoni",
        3: "Frango com Catupiry",
        4: "Quatro Queijos",
        5: "Calabresa"
    }
    print("Cardápio de Pizzas:")
    for chave, valor in cardapio.items():
        print(f"{chave} - {valor}")
    return cardapio
				
			

FUNÇÃO ESCOLHER PIZZA

				
					def escolher_pizza(cardapio):
    while True:
        try:
            escolha = int(input("Escolha o sabor da pizza (1-5): "))
            if escolha in cardapio:
                return cardapio[escolha], escolha
            else:
                print("Escolha inválida. Tente novamente.")
        except ValueError:
            print("Entrada inválida. Digite um número de 1 a 5.")
				
			

FUNÇÃO DEFINIR PREÇO

				
					def definir_preco_pizza(escolha):
    if escolha == 1:
        return 25.00
    elif escolha == 2:
        return 30.00
    elif escolha == 3:
        return 28.00
    elif escolha == 4:
        return 32.00
    elif escolha == 5:
        return 27.00
  
				
			

FUNÇÃO EXIBIR INGREDIENTES

				
					def exibir_ingredientes():
    ingredientes = {"A": "Catupiri",
                    "B": "Cheddar",
                    "C": "+Queijo"}

    for codigo, ingrediente in ingredientes.items():
        print(f"{codigo} - {ingrediente}")
    
    return ingredientes
				
			

FUNÇÃO ESCOLHER INGREDIENTES

				
					def escolher_ingredientes(ingredientes):
    ingredientes_escolhidos = []
    
    while len(ingredientes_escolhidos) < 3:
        ingrediente_escolher = input("Digite o código do ingrediente ou S(sair): ").upper()
        if ingrediente_escolher == "S":
            break
        if ingrediente_escolher in ingredientes:
            ingredientes_escolhidos.append(ingrediente_escolher)

    total_preco_ingredientes = len(ingredientes_escolhidos) * 3.00
    return ingredientes_escolhidos, total_preco_ingredientes
				
			

FUNÇÃO ESCOLHER PAGAMENTO

				
					def escolher_pagamento():
    formas_pagamento = ["Pix", "Dinheiro", "Cartão"]
    while True:
        print("Formas de pagamento:")
        for i, forma in enumerate(formas_pagamento, start=1):
            print(f"{i} - {forma}")
        try:
            escolha = int(input("Escolha a forma de pagamento (1-3): "))
            if 1 <= escolha <= 3:
                return formas_pagamento[escolha - 1]
            else:
                print("Escolha inválida. Tente novamente.")
        except ValueError:
            print("Entrada inválida. Digite um número de 1 a 3.")
				
			

FUNÇÃO GERAR NOTA

				
					def gerar_nota_fiscal(pizza, preco_pizza, ingredientes, custo_ingredientes, pagamento):
    total = preco_pizza + custo_ingredientes
    print("\n--- Nota Fiscal ---")
    print(f"Pizza escolhida: {pizza} - R$ {preco_pizza:.2f}")
    if ingredientes:
        print(f"Ingredientes adicionais: {', '.join(ingredientes)} - R$ {custo_ingredientes:.2f}")
    else:
        print("Ingredientes adicionais: Nenhum - R$ 0.00")
    print(f"Forma de pagamento: {pagamento}")
    print(f"Total: R$ {total:.2f}")
    print("-------------------\n")
				
			

FUNÇÃO MAIN

				
					def main():
    cardapio = exibir_cardapio()
    pizza, escolha_pizza = escolher_pizza(cardapio)
    preco_pizza = definir_preco_pizza(escolha_pizza)
    dicionario_ingredientes = exibir_ingredientes()
    ingredientes, custo_ingredientes = escolher_ingredientes(dicionario_ingredientes)
    pagamento = escolher_pagamento()
    gerar_nota_fiscal(pizza, preco_pizza, ingredientes, custo_ingredientes, pagamento)


# Execute a função principal
if __name__ == "__main__":
    main()
				
			

Gostou do desafio de python #1? Deixe seu comentário!

Posts Similares

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *