S05 - Projeto: Carrinho de Compras
Sobre as Etapas do Projeto (Marcos):
Um marco ou marco quilométrico é um marcador colocado ao longo de uma rodovia para informar a distância percorrida ou indicar seu deslocamento em direção a um destino específico. Em projetos de desenvolvimento de software, o marco (etapa) do projeto indica um ponto específico ao longo do cronograma do projeto.
Para ajudar você a avançar na conclusão deste projeto, você concluirá parte do programa no meio da semana e enviará uma “Etapa”. Então, até o final da semana, você concluirá o programa e enviará a versão finalizada.
Primeiro você deve ler a descrição completa do projeto. Depois, na parte inferior desta página, você vai ver quais recursos são necessários para a etapa e quais são necessários para o projeto em geral.
Visão Geral
Muitos aplicativos usam algum tipo de carrinho de compras, no qual os usuários podem adicionar e remover itens, visualizar o conteúdo do carrinho e o total. Armazenar esta coleção de itens requer manter o controle de uma lista de itens e atualizá-la de várias maneiras.
Descrição do Projeto
Para este projeto, você criará um programa que armazenará uma lista de produtos em um carrinho de compras junto com os respectivos preços. O usuário poderá adicionar itens à lista, removê-los e ver o preço total do carrinho.
Para a entrega desta etapa, você só precisará se preocupar em armazenar uma lista com os nomes dos itens (ainda sem os preços) e em apenas adicionar novos itens e exibir a lista. Depois, no projeto completo, você acrescentará a capacidade de armazenar os preços, remover itens e calcular o total.
Tarefa
Para este projeto, o usuário receberá um menu e poderá escolher itens desse menu. As opções do menu incluem o seguinte:
Adicionar um novo item.
Exibir o conteúdo do carrinho de compras.
Remover um item (necessário apenas para a entrega final do projeto).
Calcular o total (necessário apenas para a entrega final do projeto).
Sair.
Quando o usuário escolher uma dessas opções, o programa deverá executar a ação apropriada. Em seguida, o programa deverá exibir o menu novamente e permitir que o usuário escolha outra opção. A execução deverá continuar até que o usuário escolha a opção de sair.
As seções a seguir descrevem o comportamento esperado de cada opção:
Adicionar um Novo Item
O programa deve pedir ao usuário o nome do item. Para a entrega final do projeto, o programa também deve perguntar o preço do item ao usuário.
O programa deve armazenar esses valores em uma lista. Ao trabalhar na entrega da etapa, você precisará apenas de uma lista (para armazenar os nomes). Para o projeto final, ao armazenar nomes e preços, você deverá usar duas listas, uma para os nomes e outra para os preços.
Exemplo da funcionalidade deste item:
Qual item você gostaria de adicionar? meias
Qual é o preço de 'meias'? 5.99
O item 'meias' foi adicionado ao carrinho.
Após o usuário fornecer esses valores, o item e o preço serão armazenados em suas respectivas listas.
Dica: você deverá criar novas listas vazias no início do programa para que, quando chegar a esse ponto, você já tenha listas prontas nas quais poderá armazenar o nome e o preço.
Exibir o Conteúdo do Carrinho de Compras
O programa deverá exibir todos os itens do carrinho de compras, um por linha. Para a entrega da etapa, você só precisará exibir os nomes dos itens. Para a entrega final do projeto, o preço de cada item deverá ser exibido ao lado do item.
Além disso, para o projeto final, o programa também deverá exibir o número associado a cada item da lista, começando com 1. Isso é diferente de como o Python irá armazená-los, porque ele começa a contar em 0, mas para que não fique estranho para o usuário, você deve começar os números em 1.
Exemplo da funcionalidade deste item:
O conteúdo do carrinho de compras é:
1. cama - R$ 100.00
2. cadeira - R$ 24.99
3. cobertor - R$ 48.50
Remover um Item
O usuário deverá digitar o número do item que deseja remover e o item deverá ser removido da lista.
Para fazer isso corretamente, seu programa precisará executar cada um dos seguintes procedimentos:
Converter o número inserido pelo usuário em um índice baseado em 0. Por exemplo, se o usuário quiser remover o segundo item da lista, digitará “2” (porque os números mostrados começam em 1), mas esse item será armazenado em Python no índice 1 (porque Python começara a contar em 0).
Confirmar que o índice esteja dentro dos limites da lista atual (por exemplo, não é possível remover o item 10 se houver apenas 5 itens na lista). Se o índice estiver fora dos limites da lista, o programa não deve tentar removê-lo, mas sim exibir uma mensagem informando ao usuário que a ação dele é inválida.
Remover o item no local informado da lista. Não se esqueça de que se estiver armazenando nomes e preços, você precisará remover tanto o nome quanto o preço das respectivas listas.
Veja abaixo um exemplo dessa funcionalidade, considerando que a lista tem 5 itens:
Qual item você gostaria de remover? 3
Item removido.
Qual item você gostaria de remover? 13
O número informado não é válido.
Calcular o Total
O programa deverá percorrer cada item da lista e somar os preços, e então exibir o valor total ao usuário.
Veja abaixo o resultado esperado, considerando que o valor total dos itens no carrinho de compras é de $ 35.68
O preço total dos itens no carrinho de compras é de R$ 35.68
Requisitos da Etapa
Durante a semana, para ajudar a garantir que você esteja caminhando para concluir a tarefa, você precisará realizar o seguinte:
Ter um sistema de menu que se repete até que o usuário decida sair.
Criar uma lista para armazenar os nomes dos itens do carrinho de compras.
Concluir a opção para adicionar o nome do item à lista.
Concluir a opção para exibir os nomes dos itens da lista.
Veja abaixo a funcionalidade do programa até aqui:
Bem-vindos ao Programa de Carrinho de Compras!
Selecione uma das seguintes ações:
1. Adicionar item
2. Ver carrinho
3. Remover item
4. Calcular o total
5. Sair
Por favor, insira uma ação: 1
Qual item você gostaria de adicionar? cama
O item 'cama' foi adicionado ao carrinho.
Selecione uma das seguintes ações:
1. Adicionar item
2. Ver carrinho
3. Remover item
4. Calcular o total
5. Sair
Por favor, insira uma ação: 1
Qual item você gostaria de adicionar? cadeira
O item 'cadeira' foi adicionado ao carrinho.
Selecione uma das seguintes ações:
1. Adicionar item
2. Ver carrinho
3. Remover item
4. Calcular o total
5. Sair
Por favor, insira uma ação: 1
Qual item você gostaria de adicionar? cobertor
O item 'cobertor' foi adicionado ao carrinho.
Selecione uma das seguintes ações:
1. Adicionar item
2. Ver carrinho
3. Remover item
4. Calcular o total
5. Sair
Por favor, insira uma ação: 2
O conteúdo do carrinho de compras é:
cama
cadeira
cobertor
Selecione uma das seguintes ações:
1. Adicionar item
2. Ver carrinho
3. Remover item
4. Calcular o total
5. Sair
Por favor, insira uma ação: 5
Obrigado. Até mais.
Requisitos Finais
Além das funcionalidades acima, para o projeto final, você também precisará concluir o seguinte:
Armazenar preços e nomes.
Alterar a funcionalidade de adição para também solicitar e armazenar o preço do item.
Alterar a funcionalidade de exibição para também exibir os preços dos itens.
Ao exibir os itens, o programa deverá mostrar um número antes de cada item. Os números deverão começar com 1.
Concluir a opção de exibir o valor total dos preços de todos os itens do carrinho de compras.
Sempre que os preços forem exibidos, deverão incluir duas casas decimais e a moeda apropriada (por exemplo R$, $, € etc.)
Concluir a opção para remover um item do carrinho de compras.
Ao remover um item, verifique o seguinte:
O nome e o preço do item deverão ser removidos de suas respectivas listas.
O número digitado pelo usuário deverá ser convertido em um índice base 0 e verificado para garantir que esteja dentro dos limites da lista.
O programa deverá permitir que qualquer item da lista seja removido, incluindo o primeiro e o último. (Às vezes, se o seu projeto tiver um bug (erro), você pode não conseguir remover o último item como deveria.)
A seguir mostramos um exemplo do programa completo:
Bem-vindos ao Programa de Carrinho de Compras!
Selecione uma das seguintes ações:
1. Adicionar item
2. Ver carrinho
3. Remover item
4. Calcular o total
5. Sair
Por favor, insira uma ação: 1
Qual item você gostaria de adicionar? Leite
Qual é o preço de 'Leite'? 3.49
O item 'Leite' foi adicionado ao carrinho.
Selecione uma das seguintes ações:
1. Adicionar item
2. Ver carrinho
3. Remover item
4. Calcular o total
5. Sair
Por favor, insira uma ação: 1
Qual item você gostaria de adicionar? Pão
Qual é o preço de 'Pão'? 2.50
O item 'Pão' foi adicionado ao carrinho.
Selecione uma das seguintes ações:
1. Adicionar item
2. Ver carrinho
3. Remover item
4. Calcular o total
5. Sair
Por favor, insira uma ação: 1
Qual item você gostaria de adicionar? Manteiga
Qual é o preço de 'Manteiga'? 4.00
O item 'Manteiga' foi adicionado ao carrinho.
Selecione uma das seguintes ações:
1. Adicionar item
2. Ver carrinho
3. Remover item
4. Calcular o total
5. Sair
Por favor, insira uma ação: 2
O conteúdo do carrinho de compras é:
1. Leite - R$ 3.49
2. Pão - R$ 2.50
3. Manteiga - R$ 4.00
Selecione uma das seguintes ações:
1. Adicionar item
2. Ver carrinho
3. Remover item
4. Calcular o total
5. Sair
Por favor, insira uma ação: 3
O conteúdo do carrinho de compras é:
1. Leite - R$ 3.49
2. Pão - R$ 2.50
3. Manteiga - R$ 4.00
Qual item você gostaria de remover? 2
Item removido.
Selecione uma das seguintes ações:
1. Adicionar item
2. Ver carrinho
3. Remover item
4. Calcular o total
5. Sair
Por favor, insira uma ação: 2
O conteúdo do carrinho de compras é:
1. Leite - R$ 3.49
2. Manteiga - R$ 4.00
Selecione uma das seguintes ações:
1. Adicionar item
2. Ver carrinho
3. Remover item
4. Calcular o total
5. Sair
Por favor, insira uma ação: 4
O preço total dos itens no carrinho de compras é de R$ 7.49
Selecione uma das seguintes ações:
1. Adicionar item
2. Ver carrinho
3. Remover item
4. Calcular o total
5. Sair
Por favor, insira uma ação: 5
Obrigado. Até mais.
Demonstrando Criatividade e Indo Além dos Requisitos
Além das funcionalidades listadas acima, adicione algo de sua criatividade à tarefa. Você pode considerar adicionar uma formatação melhor (por exemplo, alinhar os preços), armazenar informações adicionais, como a quantidade dos itens na lista, ou adicionar qualquer outra coisa que acredite que melhore o carrinho de compras.
Importante: Para receber crédito pela criatividade, você deverá inserir um comentário no início do programa que descreva o que você adicionou em uma ou duas frases.
Envio de Tarefa
Há uma tarefa para ser enviada no Canvas tanto para a Etapa quanto para a Entrega final. Lembre-se de:
- Voltar ao Canvas para enviar:
- A etapa (durante a semana)
- O projeto final (final da semana)
Próxima Atividade
- S05 - Reflexão
Outros links:
- Voltar para: Visão Geral da Semana | Página Inicial