Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] Desafio: Calculando pedidos

A funcionalidade deve armazenar e calcular o valor total do pedido com base na quantidade e valor do item.

quantidade x valor dos itens selecionados = valor total

Assim que o usuário selecionar a quantidade itens e suas respectivas quantidades a funcionalidade deve calcular e mostrar o valor total. Assim que o usuário finalizar a seleção dos itens "Fechar o pedido", todas as variáveis devem ser armazenadas: itens do pedido, quantidade de cada item no pedido, valor unitário dos itens e valor total do pedido.

1 resposta
solução!

Olá, Milena. Como vai?

Excelente iniciativa ao compartilhar a estruturação da sua funcionalidade. Esse desafio é fundamental para exercitar o pensamento computacional, especificamente os pilares de decomposição (dividir o problema em partes como entrada, cálculo e armazenamento) e algoritmos.

Para agregar valor à sua lógica de programação, gostaria de sugerir como essa funcionalidade pode ser estruturada de forma mais robusta, utilizando conceitos de listas e dicionários, que facilitam o armazenamento final dos dados:

1. Lógica de Cálculo Contínuo
Para que o valor total seja mostrado assim que o usuário seleciona a quantidade, você pode utilizar um laço de repetição (como o while) que atualiza uma variável acumuladora a cada novo item adicionado.

2. Estrutura de Armazenamento
Como o desafio pede para armazenar diversas informações ao "Fechar o pedido", uma boa prática é utilizar uma lista de objetos (ou dicionários no Python). Veja um exemplo prático de como essa lógica pode ser traduzida em código:

# Inicializando o pedido
pedido_final = []
valor_total_pedido = 0

# Exemplo de loop para adicionar itens
while True:
    item_nome = input("Digite o nome do item (ou 'sair' para fechar): ")
    if item_nome.lower() == 'sair':
        break
        
    quantidade = int(input(f"Quantidade de {item_nome}: "))
    valor_unitario = float(input(f"Valor unitário de {item_nome}: "))
    
    # Cálculo solicitado: quantidade x valor
    subtotal = quantidade * valor_unitario
    valor_total_pedido += subtotal
    
    # Armazenando todas as variáveis conforme o desafio
    item_armazenado = {
        "item": item_nome,
        "quantidade": quantidade,
        "valor_unitario": valor_unitario,
        "subtotal": subtotal
    }
    pedido_final.append(item_armazenado)
    
    print(f"Subtotal parcial: R$ {subtotal:.2f}")

# Fechamento do pedido
print("\n--- PEDIDO FINALIZADO ---")
for registro in pedido_final:
    print(f"{registro['quantidade']}x {registro['item']} - R$ {registro['subtotal']:.2f}")

print(f"VALOR TOTAL DO PEDIDO: R$ {valor_total_pedido:.2f}")

Dica de Pensamento Computacional:
Note que ao "fechar o pedido", o uso da lista pedido_final garante a abstração dos dados, permitindo que você tenha um histórico completo de tudo o que foi selecionado, e não apenas o resultado final da conta. Isso é essencial para sistemas de e-commerce e gestão de estoque.

Continue focada na lógica por trás do código, pois entender o fluxo da informação é o passo mais importante para se tornar uma boa programadora!

Espero que possa ter lhe ajudado!