Crie um procedimento chamado cadastrarProduto que recebe como parâmetro a lista de produtos cadastrados e que deve realizar o cadastro de um produto na lista estoque. Deve ser solicitado todos os dados do novo produto, porém não podem ser cadastrados produtos com o mesmo código de barra. Produtos novos devem ser cadastrados no final da lista estoque ( 1,5 ponto)
Passo 1
Beleza, vamos entender o que o exercício está pedindo. A gente precisa criar um procedimento chamado
cadastrarProduto
que recebe uma lista de produtos já cadastrados. Esse procedimento vai adicionar um novo produto nessa lista, mas tem que garantir que não vai ter dois produtos com o mesmo código de barra. Além disso, o novo produto deve ser colocado no final da lista. Para resolver isso, vamos usar conceitos básicos de listas e controle de fluxo para verificar se o código de barra já existe antes de adicionar o produto.Passo 2
Primeiro, vamos definir o procedimento
cadastrarProduto
que recebe a lista de produtos como parâmetro. Em programação, um procedimento (ou função) é um bloco de código que realiza uma tarefa específica. No nosso caso, a tarefa é cadastrar um novo produto na lista.Passo 3
Dentro do procedimento, precisamos solicitar todos os dados do novo produto. Geralmente, um produto pode ter atributos como nome, preço, quantidade e, no nosso caso, o código de barra. Vamos pedir para o usuário digitar essas informações.
Passo 4
Depois de coletar os dados do produto, precisamos verificar se já existe um produto com o mesmo código de barra na lista. Para isso, vamos percorrer a lista de produtos e comparar o código de barra de cada produto com o código do novo produto. Se encontrar um código igual, devemos informar que o produto já está cadastrado e não adicionar na lista.
Passo 5
Se, após verificar todos os produtos, não encontrarmos nenhum com o mesmo código de barra, podemos adicionar o novo produto ao final da lista. Em programação, listas geralmente permitem adicionar elementos no final usando métodos específicos, dependendo da linguagem que estamos usando.
Passo 6
Por fim, vamos testar nosso procedimento para garantir que está funcionando corretamente. Vamos tentar cadastrar um produto com um código de barra já existente e ver se o sistema impede a duplicação. Depois, vamos cadastrar um produto com um código único e verificar se ele é adicionado ao final da lista.
Resposta
Aqui está um exemplo de como você pode implementar o procedimento
cadastrarProduto
em Python:def cadastrarProduto(lista_produtos):
# Solicita os dados do novo produto
nome = input("Digite o nome do produto: ")
preco = float(input("Digite o preço do produto: "))
quantidade = int(input("Digite a quantidade do produto: "))
codigo_barra = input("Digite o código de barra do produto: ")
# Verifica se o código de barra já existe na lista
for produto in lista_produtos:
if produto['codigo_barra'] == codigo_barra:
print("Erro: Produto com esse código de barra já está cadastrado.")
return # Sai do procedimento sem adicionar o produto
# Cria um dicionário com os dados do novo produto
novo_produto = {
'nome': nome,
'preco': preco,
'quantidade': quantidade,
'codigo_barra': codigo_barra
}
# Adiciona o novo produto ao final da lista
lista_produtos.append(novo_produto)
print("Produto cadastrado com sucesso!")
Como usar:
# Lista inicial de produtos
estoque = [
{'nome': 'Produto A', 'preco': 10.0, 'quantidade': 100, 'codigo_barra': '123456'},
{'nome': 'Produto B', 'preco': 20.0, 'quantidade': 50, 'codigo_barra': '789012'}
]
# Cadastrando um novo produto
cadastrarProduto(estoque)
# Exibindo a lista atualizada
print(estoque)
Esse procedimento vai solicitar os dados do novo produto, verificar se o código de barra já existe e, se não existir, adicionar o produto ao final da lista
estoque
. Se o código já estiver cadastrado, ele vai avisar o usuário e não vai adicionar o produto.Exercícios relacionados
Dê um exemplo de um problema do mundo real que pode ser modelado como o problema do caixeiro viajante.
Crie uma função chamada mediaPrecoPromocao que recebe como parâmetro a lista de produtos cadastrados e retorna um valor float, indicando o valor médio dos preços de produtos que estejam em promoção ( 2,0 pontos).
Crie um procedimento chamado promoverProdutos que como receba como parametros uma lista de códigos de barra e a lista de produtos cadastrados. A função deve realizar seu processamento de modo que para cada codigo de barra existente na primeira lista, o campo de promoção do produto correspondente na lista de produtos existentes seja modificado para True, indicando que o mesmo passa a se encontrar em promoção. A função deve ainda retornar uma lista com os códigos de barra fornecidos na primeira lista, porém que não possuam produto correspondente na lista de estoque.( 2,0 pontos)
Crie um procedimento chamado listarPromocoesCaros que recebe como parâmetro a lista de produtos cadastrados e que deve apresentar todos os dados de produtos em promoção que estejam acima da média de preços dos produtos promocionais em ordem alfabética dos nomes do produtos ( 2,0 pontos)